Das können Sie tun, wenn im Browser PHP-Code sichtbar wird

Wenn Sie eine Website neu aufsetzen oder eine bestehende Site umziehen, kann es sein, dass beim Aufruf statt der erwünschten Startseite im Browser eine Mischung aus bruchstückhafter Text und PHP-Codefragmenten erscheint.

PHP Kauderwelsch im Browser

Das Problem kann dann mehrere Ursachen haben, die aber auf denselben Effekt hinauslaufen: PHP interpretiert den Code nicht, sondern er wird einfach durchgereicht und gelangt so zum Browser.

Der einfachste Fall, der sicher jedem schon einmal passiert ist: Sie haben schlichtweg den PHP-Tags vergessen, der den Skriptcode einleitet, also das  Konstrukt

<?php

Ist es das nicht, müssen Sie ein wenig tiefer forschen.

Fehler beim Einrichten des Webservers

Fand gerade eine Neuinstallation der Server-Software statt, liegt der Fehler eher in einer falschen Konfiguration des Webservers. Der sollte aufgrund der Endung “.php” eigentlich die Datei dem PHP-Interpreter zum Beackern übergeben. Weiß der Webserver nichts davon, kommt es wieder zum PHP-Sourcecode in der Browser-Darstellung.

Bei Apache muss die zuständige Konfiuguarionsdatei, also etwa /etc/httpd.conf diese Zeile aufweisen:

AddType application/x-httpd-php .php

Zusätzlich muss in der Datei mime.types ein Eintrag wie folgender zu finden sein

application/x-httpd-php phtml pht php

Nach einem Server-Neustart, etwa durch apachectl restart sollte das Skript bearbeitet werden.

Fehler durch Probleme in der PHP-Konfiguration

Der Effekt kann aber durchaus auch auf einem Webserver auftreten, bei dem andere in PHP geschriebene Websites klaglos funktionieren. Der Grund liegt vielleicht in den Tags, mit denen man innerhalb einer Datei dem PHP-Interpreter mitteilt, dass nun der HTML-Teil aufhört und Programmcode beginnt.

Heutzutage ist die Langform des Eröffnungs-Tags üblich. Ein simpler Code sieht dort zum Beispiel so aus:

<?php echo “Hallo Welt ?>

In der Anfangszeit von PHP gab es aber noch das kurze Tag (short tag) das manche Projekte noch einsetzen:

<? echo “Hallo Welt ?>

In der Standardkonfiguration ist diese Tag-Variante bei allen aktuellen PHP-Installationen deaktiviert. Die Folge ist, dass der PHP-Interpreter die Tags nicht erkennt und alles als HTML behandelt.

So lösen Sie das Problem mit PHP-Code im Browser

1) Die beste Option, das Problem zu beheben ist sicher, die kurzen Tags zur heute üblichen langen Form umzuschreiben. Das geht mit vielen IDEs auch recht einfach, wenn dort ein Suchen/Ersetzen über alle Dateien vorgesehen ist.

2) Wollen Sie das Problem nur einfach schnell lösen und haben Zugriff auf die Apache-Konfiguration, dann fügen Sie innerhalb der Konfiguration dieser Website ein

php_value short_open_tag on

Nach dem Neustart des Apache sollte das Problem dann verschwunden sein.

3) Wenn Sie nur Mitnutzer eines Webservers sind, dann ist die letzte praktikable Möglichkeit das Setzen der Direktive in der Datei .htaccess. Legen Sie diese Datei neu an oder ändern eine eventuell vorhandene .htaccess und fügen dort diese Zeile ein

php_value short_open_tag on

Voraussetzung dafür, dass Variante 3 funktioniert, ist dass im Webserver das Rewrite-Modul vorhanden und für Ihre Website aktiviert ist.

Ähnliche Beiträge