2013-09-04 19 views
5

Sto provando a spingere la mia app php su Heroku e ottenere l'errore seguente.heroku push respinto nessuna app supportata da cedro php - index.php attuale

Heroku riceve push ! Push Heroku respinto, nessuna app supportata da Cedar rilevata.

Ho letto tutti i post precedenti che dicevano che l'app per PHP dovrebbe avere un index.php nella cartella radice ... cosa che faccio. Quando faccio un "git ls-files" ottengo l'elenco index.php (con il nome in minuscolo).

passaggi che ho eseguito finora sono. 1. Ho un'applicazione creata su Heroku - Stack: Cedar 2. git aggiungi i file rilevanti 3. git commit con un commento 4. git push heroku master - questo ragazzo mi dà l'errore.

git ls-files elenca un file "index.php".

Cosa mi manca questa volta?

+0

Sei sicuro che l'app non si trovi in ​​una sottodirectory o qualcosa del genere? Ho avuto questo problema una volta con un'app Rails. – Rudolf

+0

@apfel Potresti essere un po 'più specifico su cosa intendi per non essere in una sottodirectory? Qualche comando che posso usare per trovare/confermare questo? l'output di git LS-files è channel.html file.txt immagini/background.png immagini/BannerText.png index.php utils.php fa questo aiuto? –

+0

Esegui 'ls -la' e assicurati che la directory' .git' si trovi nella stessa cartella del file 'index.php'. – Rudolf

risposta

2

il problema era con una directory .git errata/incompleta. Cancellare il vecchio e ricrearlo (git init) ha risolto il problema.

0

tenta di eseguire questo su di voi 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

Sto solo agli inizi con Heroku e stava incontrando lo stesso problema. Di seguito è riportata una descrizione di cosa ho sbagliato.

Procfile

Assicurarsi che la seguente dichiarazione è incluso nel vostro Procfile:

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

Dove path/to/web/ è il percorso relativo alla cartella che si desidera esporre pubblicamente sul web. Assicurati che la directory pubblica contenga un file index.php (ad esempio path/to/web/index.php).

composer.json

Nella directory composer.json (che dovrebbe essere nella directory di base del repository) assicurarsi di includere il buildpack Heroku PHP.

{ 
    "require": { 

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

Se questa affermazione è stato mancante, quindi eseguire composer update (./composer.phar update per me, perché ho scaricato compositore e messo nella directory base del mio repository) in modo che Compositore recupererà il pacchetto e installarlo nella directory vendor .

Problemi correlati