Christoph Schnauß: PHP5 auf lokalem und auf Webserver mit .htaccess erzwingen

Beitrag lesen

hallo,

Mein Provider empfiehlt, hierzu die nachfolgende Anweisung in die .htaccess zu übernehmen, was auch anstandslos funktioniert:
AddHandler application/x-httpd-php5 .php .htm

Eine Besonderheit deines Anbieters, der es sich damit "leicht" macht, unterschiedliche PHP-Versionen anzubieten. Das ".htm" solltest du da aber weglassen, PHP-Scripts bzw. alles, was PHP-Code enthält, sollte _immer_ die Endung .php erhalten.

AddHandler application/x-httpd-php .php .htm

Das ist die normale Vorgabe, und die wird auch von einem unter Windows eingesetzten Apache verstanden (aber auch hier wieder: laß das .htm da weg).

Kann ich den Handler-Namen application/x-httpd-php bzw. application/x-httpd-php5 nicht vereinheitlichen?

Solange dein lokaler Server unter Windows läuft, wird dir das kaum gelingen. Auf einem unixartigen System kannst du den Apache selber kompilieren.

Die .htaccess sollte ja auf beiden Servern identisch sein.

Warum?

Oder gibt es für die .htaccess die Möglichkeit einer bedingten Anweisung in Form von
if 'HTTP_HOST' == 'localhost'
AddHandler application/x-httpd-php .php .htm  # lokaler Server

So etwas gibt es, allerdings nicht in dieser Form. Sondern so:

  
   <IfModule php5_module>  
   SetHandler application/x-httpd-php5 .php  
   </IfModule>  
   <IfModule php4_module>  
   AddHandler application/x-httpd-php .php  
   </IfModule>

Damit wird allerdings nur nach dem geladenen Modul unterschieden, nicht aber nach dem Servernamen. Du kannst über .htacces nun die LoadModule-Anweisung nicht beeinflussen, das kann nur dein Hoster. Aber lokal kannst du es mal testen und ebenfalls zwei unterschiedliche PHP-Versionen (Module) einbinden.

Du könntest noch mit SetHandler oder mit ForceType probieren, ob du "application/x-httpd-php5" erzwingen kannst - habe ich aber selber noch nicht probiert, und das wäre auch nur für deinen lokalen Server relevant.

Am besten aber stellst du die Frage nach "application/x-httpd-php5" deinem Hoster.

Grüße aus Berlin

Christoph S.

--
Visitenkarte
ss:| zu:) ls:& fo:) va:) sh:| rl:|