web-dev-qa-db-de.com

403 Fehler bei Apache für ein Laravel-Projekt nach dem Upgrade auf Ubuntu 13.10

Ich habe ein Upgrade auf Ubuntu 13.10 durchgeführt. Beim ersten Ausführen von Apache nach dem Update fehlten/beschädigte Dateien, sodass ich Apache einfach neu installierte. Ich habe die vhost-Datei gesichert. 

Beim Versuch, auf mein Laravel -Projekt über den Browser zuzugreifen, wird ein Fehler 403 angezeigt. Ich habe die Berechtigungen des Stammordners mehrmals geändert, es ist jedoch weiterhin verboten. Ich glaube nicht, dass dies ein Problem ist, da ich es bereits am 13.04 behoben habe und dieselben Dateien verwende.

Hier ist meine 000-default.conf-Datei, die sich in/sites-enabled und/sites-available befindet. Meine Apache2.conf-Datei ist seit der Installation unverändert.

<VirtualHost *:80>
    DocumentRoot /home/brennan/development/MasonACM/public

    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>

    <Directory /home/brennan/development/MasonACM/public/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>

    ErrorLog /var/log/Apache2/error.log
    LogLevel warn
    CustomLog /var/log/Apache2/access.log combined
</VirtualHost>

Es sollte auch beachtet werden, dass meine .htaccess-Datei nicht fehlt und seit dem Arbeiten der Site am 13.04 nicht geändert wurde.

AKTUALISIEREN:

Die Host-Einstellungen von Apache funktionieren jetzt, aber jetzt zeigt der Browser den eigentlichen Code von index.php an, was bedeutet, dass Apache aus irgendeinem Grund PHP nicht verwendet. Ich habe gerade überprüft, dass PHP installiert ist. Warum sollte Apache es nicht erkennen?

23
Brennan Hoeting

Möglicherweise wurde auch Apache2 auf Version 2.4 aktualisiert, und es gibt einige Dinge, die Sie beachten sollten.

Hast du jetzt Apache 2.4.x + jetzt? Überprüfen Sie durch Ausführen:

$ Apache2 -v

In diesem Fall muss Ihr vhost angepasst werden:

Zuerst: +/- auf Optionen:

Einige Options-Parameter benötigen die +/- Syntax. Lesen Sie hier mehr . Dies kann besonders wichtig sein, wenn +/- in einigen Direktiven gemischt wird (siehe den vorherigen Link, um mehr zu erfahren).

Veränderung:

Options Indexes FollowSymLinks MultiViews

zu:

Options +Indexes +FollowSymLinks +MultiViews

Zweitens: Erlauben/Ablehnen

Apache führt jetzt die Zugriffskontrolle über mod_authz_Host durch.

Veränderung:

Order allow,deny
Allow from all

zu:

Require all granted

Weitere Informationen zu upgrade von Apache 2.2 auf 2.4 .

52
fideloper

Ich hatte das gleiche Problem, aus irgendeinem Grund machte der Neustart von Apache mit Sudo einen Unterschied. Sind Mods neu geschrieben und mcrypt?

2
Staple

Ich hatte ein Problem, wo ich in der Routes-Datei (web.php) zwei Routen (denselben Link) hatte, aber unterschiedliche Controller-Aktionen. Die zweite Aktion war leer, deshalb war sie leer.

Zum Beispiel:

Route::get('/route', '[email protected]');
Route::get('/route', '[email protected]');
0
Petar Vasilev