2013-09-04 8 views
5

Ich versuche, meine php App nach Heroku zu schieben und bekomme den untenstehenden Fehler.Heroku Push abgelehnt keine Zedern-unterstützte App erkannt php - index.php vorhanden

Heroku empfängt drücken ! Heroku-Push abgelehnt, keine von Cedar unterstützte App erkannt.

Ich habe alle vorherigen Posts gelesen, die sagten, dass die PHP-App eine index.php im Stammordner haben sollte ... was ich tue. Wenn ich ein "git ls-files" mache, bekomme ich die index.php aufgelistet (mit dem Namen in Kleinbuchstaben).

Schritte, die ich bisher durchgeführt habe, sind. 1. Ich habe eine Anwendung erstellt auf Heroku - Stapel: Cedar 2. Git fügen Sie die relevanten Dateien 3. Git commit mit einem Kommentar 4. git push heroku Meister - dieser Typ gibt mir den Fehler.

git ls-files listet eine Datei "index.php" auf.

Was fehlt mir diesmal?

+0

Sind Sie sicher, dass die App nicht in einem Unterverzeichnis oder etwas ist? Ich hatte dieses Problem einmal mit einer Rails App. – Rudolf

+0

@apfel Könnten Sie bitte etwas konkreter sein, was Sie meinen, wenn Sie nicht in einem Unterverzeichnis sind? Irgendein Befehl, den ich verwenden kann, um das zu finden/zu bestätigen? die Ausgabe von git ls-files ist channel.html datei.txt images/background.png images/BannerText.png index.php utils.php diese Hilfe tut? –

+0

Führen Sie 'ls -la' aus und vergewissern Sie sich, dass sich das' .git'-Verzeichnis im selben Ordner wie die 'index.php'-Datei befindet. – Rudolf

Antwort

2

Das Problem war mit einem falschen/unvollständigen .git-Verzeichnis. Das Löschen des alten und das erneute Erstellen (git init) lösten das Problem.

0

versuchen, dies auf Sie ausführen 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

Ich bin gerade erst anfangen mit Heroku und war die Begegnung mit dem gleichen Problem. Im Folgenden finden Sie eine Beschreibung dessen, was ich falsch gemacht habe.

procfile

Vergewissern Sie sich, dass die folgende Anweisung in der Procfile enthalten ist:

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

Wo path/to/web/ der relative Pfad zu dem Verzeichnis, das Sie im Web öffentlich entlarven wollen. Stellen Sie sicher, dass das öffentliche Verzeichnis eine index.php-Datei enthält (z. B. path/to/web/index.php).

composer.json

In Ihrem composer.json Verzeichnis (das im Basisverzeichnis des Repository sein sollte) sicherstellen, dass die Heroku PHP buildpack aufzunehmen.

{ 
    "require": { 

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

Wenn diese Aussage fehlt, dann laufen composer update (./composer.phar update für mich, weil ich Komponist heruntergeladen und legte sie in das Hauptverzeichnis in meinem Repository), so dass Komponist das Paket holen und installieren Sie es in Ihrem vendor Verzeichnis .

Verwandte Themen