PHP4 und PHP5 parallel per .htaccess

balufreak

balufreak

Aktives Mitglied
Thread Starter
Dabei seit
12.10.2003
Beiträge
1.563
Reaktionspunkte
28
Hallo zusammen!

Ich möchte gerne auf meinem Apache die beiden PHP Versionen 4 und 5 parallel laufen lassen.
Schlussendlich sollte ich in einem Directory eine .htaccess anlegen können in welchem z.B
Code:
AddType application/x-httpd-php .php
für PHP4 steht. Dieses wird dann für alle Subdirectories übernommen.

Für PHP5 möchte ich gerne
Code:
AddType application/x-httpd-php5 .php
in die .htaccess schreiben können.

Wisst ihr wie ich das meine?

Wie ist soetwas zu realisieren. Apache installieren ist kein Problem. Aber wie bringe ich das mit den zwei PHP Versionen hin?

Greets
 
das ist aber nur ein teil! du musst dem apache nicht nur den mime-type mitteilen - ist eigentlich ziemlich egal, wichtiger ist dem apache zu sagen was er mit php4 bzw. php5 dateien tun soll.

idR. wird php als modul eingebunden, zb.

eg:
Code:
LoadModule php5_module          /users/www/bin/apache/libphp5.so

du kannst aber nur php5 oder php4 als modul betreiben, beide gleichzeitig gehen nicht!

was z.b. geht, eins von beiden als modul und das andere als "cgi"-version
Code:
AddType application/x-httpd-php5 .php5
ScriptAlias /php/ /usr/local/php5/bin/
Action application/x-httpd-php5 /php/php

das bedeutet aber z.b., dass alle php5 dateien im verzeichnis "/php" liegen muessen, nur dort werden sie entsprechend "ausgewertet"... so einfach mittels .htaccess umschalten wird dann nicht gehen...

markus
 
Wie wäre es mit zwei Endungen, .php für PHP 5 und .php4 für
PHP 4?
 
@moses_78
Ne ich möchte die Endungen nicht ändern, da dies mir zu viel Arbeit gibt und später einmal kann man den Kunden nicht zumuten.

@mr660
Das ist zwar ein ansatz, jedoch denke ich, dass dies nicht wirklich zu gebrauchen ist, wenn die php5 files alle im Ordner /php liegen müssen.
 
Zuletzt bearbeitet:
google mal nach "php4 und php5 und apache". ich denke anders wirst du das nicht bewerkstelligen koennen. du musst dem apache irgendwie anweisen, wie er mit php umgehen soll. das geht als modul mittels loadmodule oder eben als "cgi". zwei php-versionen als "modul" geht nicht, also muss eines als "cgi" eingebunden werden. eine variante waere den ScriptAlias auf / zu setzen, gilt dann fuer den ganzen server...
ueber die .htaccess muesstest du dann regeln koennen dass php einmal php4 und einmal php5 meint.

ich wuerde fuer die php-version die "meistens" eingesetzt wird loadmodule und fuer die andere die cgi-version nehmen.

markus
 
google mal nach "php4 und php5 und apache". ich denke anders wirst du das nicht bewerkstelligen koennen.

Bei meinem ehemaligen Hoster funktioniert dies auch so wie ich das oben beschrieben habe. Ich denke ich werde die mal anfragen. Aber zuerst suche ich mal bei google

Greets
 
2 Apache Instanzen kommen nicht in Frage für dich, oder?
So eine Lösung wäre machbar, mit 2 getrennten httpd.conf und der Benutzung verschiedener Ports.

Ansonsten könnte dir das vielleicht weiterhelfen:
http://www.gentoo.org/proj/en/php/php4-php5-configuration.xml
Ist zwar für gentoo, liesse sich mit ein bisschen Basteln event. anpassen.
 
ich glaube suPHP ist hier die lösung... mus das mal weiter verfolgen
 
CGI-Wrapper und CGI selbst sind aber schlecht für die
Performance, da für jeden Request ein neuer Kindpro-
zess gebildet werden muss.

Mit PHP über FastCGI, wie oben beschrieben, könntest
du dein Ziel wohl eher erreichen.
 
Zurück
Oben Unten