2013-09-04 9 views
5

Próbuję przesłać moją aplikację php do Heroku i uzyskać poniższy błąd.odrzucenie heroku odrzucone nie wykryto aplikacji obsługiwanej przez cedr php - index.php present

Heroku otrzymujący push ! Prasa Heroku odrzucona, nie wykryto żadnej aplikacji obsługiwanej przez Cedry.

Przeczytałem wszystkie poprzednie posty, które mówiły, że aplikacja PHP powinna mieć index.php w folderze głównym ... co robię. Kiedy robię "git ls-files" otrzymuję listę index.php (z małą nazwą).

Kroki, które wykonałem do tej pory. 1. Mam aplikację stworzoną na Heroku - stos: Cedar 2. git dodaj odpowiednie pliki 3. git commit z komentarzem 4. git push heroku master - ten facet daje mi błąd.

git ls-files wyświetla plik "index.php".

Czego mi teraz brakuje?

+0

Czy na pewno aplikacja nie znajduje się w podkatalogu? Raz miałem ten problem z aplikacją Rails. – Rudolf

+0

@apfel Czy mógłbyś być nieco bardziej konkretny, co masz na myśli, nie będąc w podkatalogu? Jakieś polecenie, za pomocą którego mogę znaleźć/potwierdzić to? wyjście git ls-files jest channel.html file.txt images/Background.png images/BannerText.png index.php utils.php Czy to pomoże? –

+0

Uruchom 'ls -la' i upewnij się, że katalog' .git' znajduje się w tym samym folderze co plik 'index.php'. – Rudolf

Odpowiedz

2

Problem dotyczył nieprawidłowego/niekompletnego katalogu .git. Usunięcie starego i odtworzenie go (git init) rozwiązało problem.

0

spróbuj uruchomić to na ciebie Heroku Toolbelt

> heroku config:set BUILDPACK_URL=https://github.com/heroku/heroku-buildpack-php 
> git add . 
> git git commit -am "add composer.json for PHP app detection" 
> git push/git push heroku master 
3

Ja tylko wychodząc z Heroku i został napotykają ten sam problem. Poniżej znajduje się opis tego, co zrobiłem źle.

Procfile

Upewnij się, że następujące oświadczenie jest wliczone w Procfile:

web: vendor/bin/heroku-php-apache2 path/to/web/ 

path/to/web/ Gdzie jest względna ścieżka do katalogu, który chcesz wystawiać publicznie w internecie. Upewnij się, że katalog publiczny zawiera plik index.php (np. path/to/web/index.php).

composer.json

W katalogu composer.json (który powinien znajdować się w katalogu głównym repozytorium) Upewnij się, aby zawierać buildpack Heroku PHP.

{ 
    "require": { 

    }, 
    "require-dev": { 
    "heroku/heroku-buildpack-php": "*" 
    } 
} 

Jeśli to stwierdzenie brakowało, a następnie uruchomić composer update (./composer.phar update dla mnie, bo pobranych kompozytor i umieścić go w katalogu głównym mojego repozytorium) tak, że kompozytor będzie pobrać pakiet i zainstalować go w swoim katalogu vendor .

Powiązane problemy