Auf meinem neuen Ubuntu-System ist es mir gelungen, Apache2 für die Entwicklung meiner ZendFramework-Webanwendungen einzurichten.
Ich habe meine available-sites
config richtig ausgeführt, da ich localhost
anfordern kann und sie den korrekten index.html
von meinem angegebenen Verzeichnis heraufsucht.
Problem: Wenn ich index.php
anfordert, versucht firefox, die Datei herunterzuladen, anstatt das Skript auszuführen.
Irgendwelche Ideen, warum dies passieren würde?
Ich habe httpd.conf
folgendes hinzugefügt, aber es hat nicht geholfen.
AddHandler application/x-httpd-php .php5 .php4 .php .php3 .php2 .phtml
AddType application/x-httpd-php .php5 .php4 .php .php3 .php2 .phtml
wenn Firefox Ihre PHP-Dateien herunterlädt, bedeutet dies, dass auf Ihrem Server weder PHP noch das Apache-PHP-Modul installiert ist.
haben Sie Apache PHP-Modul installiert? Wenn nicht, dann installieren Sie es, indem Sie dies in ein Terminal eingeben:
Sudo apt-get install libapache2-mod-php5
und wenn ja, haben Sie Ihre index.php in /var/www/
?
Stellen Sie sicher, dass Sie PHP mit dem Befehl aktivieren
Sudo a2enmod php5
Wenn Sie userdir (http: //localhost/~user/phpinfo.php) verwenden, sollten Sie
vi /etc/Apache2/mods-enabled/php5.conf
Veränderung
<IfModule mod_userdir.c>
<Directory /home/*/public_html>
php_admin_value engine Off
</Directory>
</IfModule>
um den php_admin_value zu kommentieren
<IfModule mod_userdir.c>
<Directory /home/*/public_html>
#php_admin_value engine Off
</Directory>
</IfModule>
dann
service Apache2 restart
Für mich bestand die Lösung darin, die folgenden zwei symbolischen Links zu erstellen:
ln -s /etc/Apache2/mods-available/php5.conf /etc/Apache2/mods-enabled/php5.conf
ln -s /etc/Apache2/mods-available/php5.load /etc/Apache2/mods-enabled/php5.load
und um Apache neu zu starten:
/etc/init.d/Apache2 restart
Die http://my_server/test.php
-Datei mit folgendem Inhalt treffen:
<?php
phpinfo();
?>
kam direkt und der Browser hat nicht versucht, die PHP-Datei herunterzuladen. Der Browser musste auch nicht neu gestartet werden.
Sie müssen die Erweiterung PHP aktivieren. Tun Sie dies mit dem Befehl Sudo a2enmod php
.
Ich nehme an, Sie haben bereits PHP installiert und hier das Modul PHP für Apache installiert ...
Hast du Apache neu gestartet? Wenn nicht: Sudo service Apache2 restart
Stellen Sie sicher, dass Ihre httpd.conf-Datei ebenfalls ausgeführt wird. Starten Sie es ggf. nach einer Bearbeitung erneut, die beim Laden zu einem Fehler führt. Wenn der Neustart nicht fehlschlägt, wird die .conf-Datei nicht ausgeführt.
Wenn das Problem weiterhin besteht, schließen Sie Ihren Browser, öffnen Sie ihn erneut und leeren Sie den Cache. Es könnte sein, dass der Browser nur die Seitenantwort zwischenspeichert.
Ich habe PHP 7.0 installiert und das Dialogfeld erhalten. Ich habe Apache PHP-Modul für Version 7.0 installiert und es behebt mein Problem.
Sudo apt-get install libapache2-mod-php7.0