Das muss nicht manuell hinzugefügt werden, da das Paket libapache2-mod-php5Folgendes /etc/apache2/mods-available/php5.confenthält:
<IfModule mod_php5.c>
<FilesMatch "\.ph(p3?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
# To re-enable php in user directories comment the following lines
# (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
# prevents .htaccess files from disabling it.
<IfModule mod_userdir.c>
<Directory /home/*/public_html>
php_admin_value engine Off
</Directory>
</IfModule>
</IfModule>
Da es sich um eine Conffile handelt, ist es möglich, dass sie beim Upgrade nicht installiert wird. So beheben Sie die Bereinigung und installieren sie erneut:
Um PHP zu aktivieren, müssen Sie Folgendes ausführen:
sudo a2enmod php5
Starten Sie den Webserver neu, nachdem:
sudo /etc/init.d/apache2 restart
Andere Dinge zu tun:
Auf widersprüchliche Einstellungen prüfen in /etc/apache2.
Haben Sie Apache aus dem Quellcode erstellt?
Führen Sie aus sudo apache2ctl configtest, um Ihre Konfiguration auf Syntaxfehler zu überprüfen
Öffnen Sie http: // localhost / server-info , um die geladene Konfiguration und die geladenen Module zu überprüfen. statusDazu muss das Modul geladen sein. Wenn Sie einen Remote-Server ausführen, müssen Sie sich selbst zur Allow fromListe in hinzufügen /etc/apache2/mods-enabled/status.confund den Server anschließend neu starten
Brillant. AFK im Moment, werde dies aber heute Abend testen. Vielen Dank.
Jivings
Gereinigt und neu installiert, ist das Modul in Mods-fähigen geladen, aber ich habe immer noch das gleiche Problem ... Ich kann nichts finden, das in Konflikt geraten würde, und das Include für die conf-Dateien ist definitiv in der apache.conf vorhanden. Hast du noch andere Ideen? Vielen Dank.
Jivings
@Jivings: Einige Debugging-Ideen hinzugefügt
Lekensteyn
Immer noch nicht in der Lage, es herauszufinden. Ich habe jedoch etwas noch Merkwürdigeres entdeckt. Es scheint, dass PHP für einen der eingerichteten virtuellen Hosts einwandfrei funktioniert, obwohl nur ein documentRoot unter / var / www definiert wird. Wie ist das möglich?!
Jivings
1
Sie müssen den Cache Ihres Browsers noch leeren und Apache neu starten.
Francesco
3
Nun, nachdem nichts anderes funktioniert hat und Apache sehr verwirrend wurde, habe ich endlich alle Apache-Pakete gelöscht und neu installiert.
Scheint jetzt gut zu funktionieren, wer weiß, was daran falsch war ...
BEARBEITEN
Ich habe beim erneuten Einrichten der Apache-Konfigurationseinstellungen festgestellt, was nicht stimmt. [Dieser Blogeintrag] [1] erklärt es.
Es stellte sich heraus, dass das userdir-Modul zwar nicht aktiv verwendet wird, der Rest der Site-Dateien sich jedoch in meinem ~ / public_html-Ordner befindet und PHP für alle Inhalte dort deaktiviert wurde.
Ich vermute, dies war eine neue Erweiterung des PHP-Moduls, die in meinen Karmic-Einstellungen nicht vorhanden war.
Das sollte mit einem Konfigurationsproblem zusammenhängen. Bei Upgrades /etcwerden afaik keine Dateien kopiert (zumindest hatte jemand ein Problem damit, dass sie /etc/init.d/apache2nicht bei der Neuinstallation erstellt wurden, sondern nur bei der
Bereinigung
Seltsam, dass es vor meinem System-Upgrade dann
funktionierte
wahrscheinlich eine Funktionsänderung dann. Sie können nicht erwarten, dass bei jedem Upgrade alte Konfigurationseinstellungen berücksichtigt werden. Einige Änderungen wären für die Mehrheit sinnvoll, für andere jedoch nicht.
Lekensteyn
Tatsächlich. Vielen Dank, dass Sie mir trotzdem geholfen haben, dem auf den Grund zu gehen, sehr geschätzt :)
Jivings,
1
Die php5.confDatei in /etc/apache2/mods-enabledhat ein paar Zeilen am unteren Rand, die verhindern, dass PHP in einem Benutzerverzeichnis ausgeführt wird. Abhängig von Ihrer Konfiguration kann dies auch Ihr Problem sein. Sie können diese Zeilen einfach auskommentieren und apache2 neu laden
Nun, nachdem nichts anderes funktioniert hat und Apache sehr verwirrend wurde, habe ich endlich alle Apache-Pakete gelöscht und neu installiert.
Scheint jetzt gut zu funktionieren, wer weiß, was daran falsch war ...
BEARBEITEN
Ich habe beim erneuten Einrichten der Apache-Konfigurationseinstellungen festgestellt, was nicht stimmt. [Dieser Blogeintrag] [1] erklärt es.
Es stellte sich heraus, dass das userdir-Modul zwar nicht aktiv verwendet wird, der Rest der Site-Dateien sich jedoch in meinem ~ / public_html-Ordner befindet und PHP für alle Inhalte dort deaktiviert wurde.
Ich vermute, dies war eine neue Erweiterung des PHP-Moduls, die in meinen Karmic-Einstellungen nicht vorhanden war.
quelle
/etc
werden afaik keine Dateien kopiert (zumindest hatte jemand ein Problem damit, dass sie/etc/init.d/apache2
nicht bei der Neuinstallation erstellt wurden, sondern nur bei derDie
php5.conf
Datei in/etc/apache2/mods-enabled
hat ein paar Zeilen am unteren Rand, die verhindern, dass PHP in einem Benutzerverzeichnis ausgeführt wird. Abhängig von Ihrer Konfiguration kann dies auch Ihr Problem sein. Sie können diese Zeilen einfach auskommentieren und apache2 neu ladenquelle