Warum werden meine PHP-Dateien als einfacher Text angezeigt? [duplicate]

Lesezeit: 5 Minuten

Warum werden meine PHP Dateien als einfacher Text angezeigt duplicate
iamjonesy

Ich schreibe seit einiger Zeit PHP-Anwendungen mit PHP in WAMP. Jetzt installiere ich PHP und Apache HTTP Server separat auf meinem Arbeits-PC. Ich habe PHP 5 und den neusten Apache installiert. Ich gehe zu localhost und sehe, dass es funktioniert!

Jetzt füge ich eine Datei mit dem Namen hinzu test.php was anzeigt:

<?php
    phpinfo();
?>

Aber im Browser wird nur einfacher Text angezeigt. Gibt es irgendwo, wo ich es explizit anweisen muss, PHP 5 zu verwenden?

Warum werden meine PHP Dateien als einfacher Text angezeigt duplicate
dav

Sie sollten die PHP 5-Bibliothek für Apache installieren.

Für Debian und Ubuntu:

apt-get install libapache2-mod-php5

Und starten Sie den Apache neu:

service apache2 restart

  • für php7 apt-get installiere libapache2-mod-php7.0

    – Saurabh Chandra Patel

    4. Oktober 2016 um 18:05 Uhr

  • libapache2-mod-php installiert libapache2-mod-php7.0. Wir müssen die Version für php7 nicht explizit angeben

    – Juniid

    30. Juli 2017 um 12:22 Uhr

  • Es gibt jetzt auch apt-get install libapache2-mod-php7.2 für diejenigen mit 7.2.3

    – Cesar Bielich

    2. Mai 2018 um 19:23 Uhr

  • sudo apt-get install libapache2-mod-php* für php7-Arta-Versionen zur automatischen Installation ohne die 5 speziell

    – Rakshitha Muranga Rodrigo

    3. April 2019 um 20:06 Uhr

  • für PHP 7.4: apt-get install libapache2-mod-php7.4

    – grau

    7. März 2021 um 20:20 Uhr


1646260447 982 Warum werden meine PHP Dateien als einfacher Text angezeigt duplicate
Kris

Sie müssen dies zu Ihrer Serverkonfiguration hinzufügen:

AddType application/x-httpd-php .php

Dies setzt voraus, dass Sie PHP ordnungsgemäß installiert haben, was möglicherweise nicht der Fall ist, da es unmittelbar nach der Installation nicht dort funktioniert, wo es normalerweise funktionieren würde.

Es ist durchaus möglich, dass Sie auch die hinzufügen müssen php .so/.dll-Datei in Ihre Apache-Konfiguration mit einer LoadModule Richtlinie (normalerweise in httpd.conf).

  • iamjonesy muss möglicherweise auch einen LoadModule-Befehl für php5_module hinzufügen.

    – xuinkrbin.

    16. Februar 2013 um 5:46 Uhr

  • Das ist genau das, was ich brauche, um PHP schließlich unter Mac OSX 10.10 Yosemite zum Laufen zu bringen. Vielen Dank 🙂

    – Goldener Daumen

    14. Juli 2014 um 4:09 Uhr

  • In einem bestimmten Fall, in dem wir die .htaccess-Datei eines Clients heruntergeladen haben, gab es eine zusätzliche (und falsche) Instantiierungsdirektive „AddHandler application/x-httpd-php5 .php“, die für ihre alte Serverkonfiguration funktioniert, aber nicht für unsere. Nachdem wir diese Zeile in der .htaccess-Datei für diese Seite auskommentiert hatten, funktionierte PHP wieder einwandfrei. 🙂

    – Marty McGee

    30. Januar 2015 um 21:45 Uhr

  • Dieser Beitrag besagt, dass AddType text/html und addHandler application/x-httpd-php sein sollte, was vernünftig klingt. (serverfault.com/questions/394250/…) Was ist richtig?

    – Benutzer2345998

    3. Juli 2019 um 14:19 Uhr


  • @ user2345998: Mir scheint jetzt, dass AddHandler semantisch “richtiger” wäre. Im Jahr 2010 hat dies für mich und viele andere in jeder Apache-Version funktioniert, die wir alle ausgeführt haben. Die von Ihnen verlinkte Antwort verweist eindeutig auf unendlich viel mehr Dokumentation. Ich halte sie jedoch für besser als meine hier.

    – Kris

    4. Juli 2019 um 6:05 Uhr


Warum werden meine PHP Dateien als einfacher Text angezeigt duplicate
Piskvor verließ das Gebäude

Sie müssen Apache (den Webserver) konfigurieren, um PHP-Skripte als PHP zu verarbeiten. Überprüfen Sie die Konfiguration von Apache. Sie müssen das Modul laden (der Pfad kann auf Ihrem System abweichen):

LoadModule php5_module "c:/php/php5apache.dll"

Und Sie müssen Apache auch mitteilen, was mit PHP verarbeitet werden soll:

AddType application/x-httpd-php .php

Weitere Einzelheiten finden Sie in der Dokumentation.

  • Danke für deine Antwort. Die Datei php5apache.dll existiert nicht in meinem PHP-Verzeichnis. Heißt es immer php5apache?

    – iamjonesy

    24. August 2010 um 11:53 Uhr

  • Die .dll Datei aufgerufen wird php5apache2_2.dll für Apache 2.2 und php5apache2_4.dll für Apache 2.4

    – Benutzer

    10. Mai 2014 um 3:45 Uhr


1646260448 464 Warum werden meine PHP Dateien als einfacher Text angezeigt duplicate
Roman Bekkiev

Ein weiterer Grund (nicht für diesen Fall, aber vielleicht spart es jemandem einige Nerven) ist, dass in PHP 5.5 kurze offene Tags verwendet werden <? phpinfo(); ?> sind standardmäßig deaktiviert.

Der PHP-Interpreter würde also Code innerhalb von kurzen Tags als Klartext verarbeiten. In früheren PHP-Versionen war diese Funktion standardmäßig aktiviert. Das neue Verhalten kann also etwas mysteriös sein.

Sie könnten auch, wie ich, php-cgi vor der Installation von Apache installiert haben, und wenn Sie dies tun, wird Apache nicht richtig eingerichtet, um PHP auszuführen, PHP vollständig zu entfernen und eine Neuinstallation schien mein Problem zu beheben.

  • Ich stimme auch nicht mit @JaroslavKadlec überein, ich habe nicht in der richtigen Reihenfolge installiert und das Entfernen und Neuinstallieren hat den Trick für mich getan

    – Kabb5

    22. Juli 2015 um 19:18 Uhr

1646260449 699 Warum werden meine PHP Dateien als einfacher Text angezeigt duplicate
Mystische Kraft

Sie müssen Handler in Apache hinzufügen, um PHP-Code zu verarbeiten.

Bearbeiten Sie mit dem Befehl sudo vi /etc/httpd/conf/httpd.conf

Fügen Sie diese beiden Handler hinzu

  AddType application/x-httpd-php .php
  AddType application/x-httpd-php .php3

an der unten angegebenen Position

<IfModule mime_module>

 AddType application/x-compress .Z
 AddType application/x-gzip .gz .tgz

--Add Here--


</IfModule>

für weitere Details zu AddType-Handlern

http://httpd.apache.org/docs/2.2/mod/mod_mime.html

  • Ich stimme auch nicht mit @JaroslavKadlec überein, ich habe nicht in der richtigen Reihenfolge installiert und das Entfernen und Neuinstallieren hat den Trick für mich getan

    – Kabb5

    22. Juli 2015 um 19:18 Uhr

1646260449 661 Warum werden meine PHP Dateien als einfacher Text angezeigt duplicate
Henrik Sommerland

Benutzt du den Userdir-Mod?

In diesem Fall scheint PHP5 das Ausführen von Skripten von diesem Ort standardmäßig zu deaktivieren, und Sie müssen die folgenden Zeilen auskommentieren:

<IfModule mod_userdir.c>
    <Directory /home/*/public_html>
        php_admin_flag engine Off
    </Directory>
</IfModule>

in /etc/apache2/mods-enabled/php5.conf (auf einem Ubuntu-System)

  • Brandneues Ubuntu 18 installiere Apache2, und nirgendwo sonst habe ich das erwähnt gesehen! Kann ich dir eine Pizza schicken? croth du-weißt-was-nach-einem-namen-geht the dance dot net (keine Leerzeichen).

    – Karl Roth

    15. Dezember 2018 um 21:03 Uhr

916830cookie-checkWarum werden meine PHP-Dateien als einfacher Text angezeigt? [duplicate]

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy