Laravel 5.4 auf Heroku. Verboten Sie haben keine Berechtigung zum Zugriff auf / auf diesem server
Habe ich eingesetzt, meine laravel 5.4-app auf Heroku. Das problem ist, ich bin immer diese Fehlermeldung:
Verboten
Sie haben nicht die Berechtigung zum Zugriff auf /auf diesem server
Meine Procfile:
web: vendor/bin/heroku-php-apache2 public/
Blick in die log, ich finde, es wurde versucht, 'app/' statt '/'.
Mein log, gezupft für die Lesbarkeit.
2017-12-03T14:18:45.747195+00:00 app[web.1]: [Sun Dec 03 14:18:45.746749 2017] [autoindex:error] [pid 122:tid 140692458305280] [client 10.140.221.43:41026] AH01276: Cannot serve directory /app/: No matching DirectoryIndex (index.php,index.html,index.htm) found, and server-generated directory index forbidden by Options directive
Meine .htaccess:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
# Handle Authorization Header
RewriteC
Ich kann nicht herausfinden, wo ich sagen könnte es Aussehen in 'app/' statt '/'. Wenn das die Ursache für diesen Fehler.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich weiß nicht, warum der server denkt, dass Ihr root
/app
aber dieser Fehler tritt aufgrund der Genehmigung despublic/
Verzeichnis, aus dem Heroku dienen soll, Ihre Anwendung.Um dieses Problem zu beheben, fügen Sie einfach die folgenden
script
Abschnitt Ihrercomposer.json
Beachten Sie die änderung in der Berechtigung der
public/
Verzeichnis.EDIT:
Während Sie dabei sind, überprüfen Sie Ihre
Procfile
stellen Sie sicher, es ist richtig geschrieben und beginnt mit einem GroßbuchstabenP
.PS: ich kenne einige Leute die sehr nitpicky und würde sagen, dass die Erlaubnis ist zu lasch. Ja, ich Stimme mit Ihnen überein. Sie können es ändern, um etwas anderes wie
775
lassen Sie uns nur der Saft fließt./app
ist der absolute Pfad im Dateisystem, wo Sie die app befindet. Der Fehler zeigt an, dass IhrProcfile
nicht wirklich enthalten, was Sie von sich behauptet. Vermutlich haben Sie nicht Hinzugefügt, und verpflichtet sich, es zu Git. Apache versucht, zu dienen, von den "root" - jetzt, nicht aus derpublic/
Unterverzeichnis.Innerhalb der Laravel Root-Ordner eine Datei namens Procfile.
Schreiben Sie die folgende Zeile innerhalb der Procfile.
Dann implementieren Sie es erneut!
Src und mehr hier https://appdividend.com/2018/04/17/how-to-deploy-laravel-project-on-heroku/
Ich hoffe, das war hilfreich =)
Erstellen und diese .htaccess-Datei in Ihrem laravel installation Ordner.
Lösung ist Hier:geben Sie den link-Beschreibung hier