PHP Version einstellen via .htaccess

Aktualisiert am 24. Januar 2023

Möglicherweise habt ihr ein altes Framework, dass nur mit PHP 5.6 funktioniert auf Website A, wollt aber auf Website B WordPress unter PHP 7.3 installieren.

Oder ihr braucht eine niedrige PHP-Version, weil der Server des Providers nur diese vorhält.

Bei Alfahosting z.B. gibt es nur eine globale Einstellung der PHP Version, hier müsst ihr auf eine Anpassung der .htaccess zurückgreifen. Mit diesem Eintrag in der .htaccess Datei kann z.B PHP 7.3 für einzelne Projekte explizit definiert werden.

PHP-Version per .htaccess einstellen

Auf PHP 8 updaten

AddType application/x-httpd-php8 .php

Ändern zu PHP 7.3

AddType application/x-httpd-php73 .php

Ändern zu PHP 7.2

AddType application/x-httpd-php72 .php

Ändern zu PHP 5.6

AddType application/x-httpd-php56 .php

Bei WordPress im .htaccess File die PHP Version festlegen

und dann natürlich bei einem PHP-Update wieder anpassen!

AddHandler application/x-httpd-php8 .php

# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress

Was ist eine .htaccess-Datei?

Eine .htaccess-Datei ist eine reine Textdatei und steht für Hypertext Access.

Sie ist eine Konfigurationsdatei, die von apache-basierten Webservern verwendet wird. Mit der .htaccess wird die Anfangseinstellung des Servers konfiguriert ohne das die Hauptkonfigurationsdatei httpd.conf des Webservers angefasst wird. Deshalb liegt die .htaccess im Root-Verzeichnis deiner Homepage, d.h. bei WordPress da wo auch die Ordner wp-admin, wp-content und die liesmich.txt-Datei liegt. Oder bei statischem HTML: da wo die Index.html oder Index.php liegt.

Mit einer .htaccess-Datei kannst du auch suchmaschinenfreundliche 301-Weiterleitung realisieren.

Die .htaccess einblenden im Dateiverzeichnis und bearbeiten

Systemdateien werden von den gängigen Betriebssystemen ausgeblendet. Wenn du dich also wunderst, wo diese .htaccess bei dir liegt, musst du die Funktion “Versteckte Dateien anzeigen” anschalten.

Die PHP-Version (oder anderes) kannst du ganz einfach in einem üblichen Editor innerhalb der .htacces anpassen. Sichere eine Original-Datei, damit du ggf. wie auf Anfang setzen kannst.

Dateien mit Punkt davor im Mac anzeigen lassen

  1. Öffnen den Ordner im Finder, in dem du die versteckten Dateien anzeigen willst
  2. Drücke die Tastenkombination Befehlstaste, Shift-Taste und Punkt: [cmd] + [shift] + [.]
  3. Jetzt kannst du die versteckten Dateien und Ordner sehen und bearbeiten

Versteckte Ordner ab Windows 10 anzeigen

  1. Öffne den Explorer: Ordnersymbol oder Shortcut [Windows]+[E]
  2. Ansicht Optionen Ordner-und Suchoptionen ändern.
  3. Wähle die Registerkarte AnsichtErweiterte Einstellungen und
  4. mach ein Häkchen bei Option Versteckte Dateien, Ordner und Laufwerke anzeigen.
Versteckte Dateien in Windows anzeigen lassen
Windows: Versteckte Dateien anzeigen lassen

 

PHP-Version bei Strato und All-inkl.com anpassen

Normalerweise kannst du ganz leicht im Backend deines Providers die PHP-Version mit einem Klick anpassen – und wenn deine Homepage nicht mehr funktioniert, wieder auf die vorherige zurücksetzen. Nur die aktuellen PHP-Versionen werden kostenfrei bei deinem Provider unterstützt, für PHP 5.6 z.B. verlangt Strato fast 8 Euro/Monat als sogenannten “Extended Support”.

Bei Strato kommst du über “Datenbanken und Webspace” zur PHP-Version, bei All-inkl.com erst die jeweilige Domain anklicken und dort den Bearbeitungsmodus wählen.

Lies hierzu auch meinen Artikel, was bei einem Domain-Umzug alles zu beachten ist →

9 Gedanken zu „PHP Version einstellen via .htaccess“

  1. Vielen Dank für die tolle Anleitung.
    Strato stellt jetzt dann auch mal auf PHP 8.0 und verlangt für PHP7.4 eine Extragebühr.
    Ich habe genau das hier in die htaccess-Datei eingefügt:
    AddHandler application/x-httpd-php8 .php

    # BEGIN WordPress
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    # END WordPress

    Die Folge ist allerdings, dass ich beim Klick auf einen Menüpunkt oder beim Neuladen der Website nur den Download der wp-blog-header.php angeboten bekomme.
    Nehme ich das AddHandler application/x-httpd-php8 .php wieder raus, funktioniert es wieder.
    Irgendeine Idee, was ich falsch mache?
    Beste Grüße, Birgitte

    Antworten
    • Hallo Brigitte, wenn du bei Strato bist, kannst du (wie bei den meisten Providern) im Backend die PHP-Version ändern, OHNE in die .htaccess einzugreifen. Sollte deine PHP-Version deine Seite zerschießen, kannst du innerhalb von Strato auf PHP 7.4 zurück und erstmal deine Seite PHP 8-konform machen. Deine .htaccess würde ich wieder bereinigen, d.h. der Inhalt ab #Begin WordPress bleibt stehen.
      Ich hoffe, diese Infos helfen dir.

      Antworten
      • Vielen Dank für deine schnelle Antwort,
        leider hat Strato das geändert. So funktionierte es bisher, hat auch immer reibungslos geklappt.
        Jetzt sind Anpassungen in der htaccess notwendig, so sagte es mir der Support.
        Das Ziel dieser erschwerten Umstellung ist sicher, dass man in seiner Verzweiflung auf den kostenpflichtigen Support für PHP7.4 zurückgreift.

        Antworten
        • Ich habe gerade einige Websites auf PHP8 umgestellt und es funktioniert wie gewohnt. Bei einer hatte ich technische Schwierigkeiten. Hier habe ich ein Backup von der Homepage gemacht und diese dann neu installiert, als PHP 8 lief. Man muss ja auch auf PHP 8 umstellen, um den Extended Support für PHP 7.4 los zu sein. Das läuft ja sehr schräg bei dir.

          Antworten
          • Echt interessant, bei mir klappt bei allen vier Kundenprojekten, die ich noch bei Strato habe, nicht. Wenn ich bei Strato in die Verwaltung der WordPress Anwendungen gehe, steht die WordPress Installation dort in einer Version von 2015 (da wurde die Website erstellt). Die Aktualisierungen mache ich immer in der WordPress-Anwendung selbst, da ist alles auf dem neuesten Stand. Scheint so, als bekäme Strato das nicht mit. Ob es daran liegt? Machst du die Aktualisierungen deiner WordPress-Seite über Strato?

          • Meine WordPress-Seiten sind immer up-to-date, ich arbeite mit gängigen Themes und Plugins, ganz selten passen die nicht zu der aktuellen WP-Version. Innerhalb von WordPress: Ich ziehe erst ein Backup, bei jedem Update eines Plugins prüfe ich die Funktionalität. Bei jedem Update des Plugins prüfe ich die Funktionalität, und die PHP-Umstellung mache ich immer über Strato, wie in dem Bild, was du im Beitrag findest. Die Installation von WordPress innerhalb von Strato ignoriere ich, auch wenn eine 1-Klick-Installation vorliegt.

  2. Genauso mache ich es auch.
    Alle 4 Kundenprojekte sind nach dem Upgrade auf PHP 8.0 verschwunden und es wir ein schwerwiegender Fehler angezeigt. Deshalb musste ich wieder downgraden. Support? Ja, nach 45 Minuten in der Hotline bekam ich den Tipp mit der htaccess – der ja auch wieder falsch zu sein scheint bei WordPress.

    Antworten
    • Ich hatte diesen schwer wiegenden Fehler einmal. Da war die Homepage in einem Unterverzeichnis installiert, das der Webdesigner angelegt hatte und die Website wurde so dargestellt: http://www.domain.de/wordpress, das habe ich korrigiert, indem ich
      die Seite intern so eingestellte, dass sie mit http://www.domain.de geöffnet werden konnte, alles schien okay. Und bei dem Upgrade auf PHP 8.0 funktionierte nichts mehr.
      Dann habe ich ein Backup gezogen (All-in-one-Migration), die Homepage gelöscht und eine 1-Klick-Installation auf die Domain durchgeführt und das Backup eingespielt. Dann klappte auch PHP8

      Antworten

Schreibe einen Kommentar