phpbar.de logo

Mailinglisten-Archive

[php] PHP4 (modul) & PHP5 (cgi) parallel, php-cgi.exe werden nicht beendet

[php] PHP4 (modul) & PHP5 (cgi) parallel, php-cgi.exe werden nicht beendet

Aron Schlesinger aron at viplocations.de
Fre Aug 19 13:00:56 CEST 2005


Am 19.08.2005 um 12:33 schrieb Jens Giessmann:
> On Fri, Aug 19, 2005 at 12:13:41PM +0200, Aron Schlesinger wrote:
>> Am 19.08.2005 um 11:06 schrieb Jens Giessmann:
>>> Nicht in einem Apache. Was man aber machen kann, ist 2
>>> Apache-Instanzen nebeneinander laufen zu lassen.
>>
>> Warum sollte das nicht in einem Apache gehen? Bei Unix/Linux ist
>> das kein Problem von Windows habe ich aber Null Plan.
>
> Ich hab von Windows auch keinen Plan. Aber auch unter Unix hab ich es
> nicht zum Laufen gebracht.
>
>> Du musst halt dafür sorgen das zum Beispiel das 4er Modul an die
>> Endung *.php4 und das andere an *.php5 gebunden wird.
>
> Ja, so die Theorie, aber hast du mal beide Module zusammen in einem
> Apache geladen?

Im Apache2 Ja, müsste aber auch in 1.x gehen.

> Beide gehen aber vom selben application Type aus.
>
> php-4.3.10/sapi/apache/mod_php4.c:       {"application/x-httpd- 
> php", send_parsed_php}
> php-5.0.3/sapi/apache/mod_php5.c:       {"application/x-httpd-php",  
> send_parsed_php}

Ja genau hier ist das Problem.
Ich habe den ApplicationType geändert auf application/x-httpd-php4,
application/x-httpd-php5 wie es in einigen Linux-Dist. üblich ist.

> Ohne C-Code patchen ist also nix mit:
> "einfach mal den AddType in der Apache-Conf setzen."

Das wohl richtig.
Die unsaubere Lösung ist den String im fertig kompilieren libphpX.so
zu ersetzen, dann muss der String genauso lang sein wie der Originale.
Die bessere ist wohl gleiche vorm kompilieren das im Quelltext zu  
ändern.

Aber es ist Bastelei, da hast Du recht :(

>> Oder wie auch immer.
>
> Genau das WIE wuerde mich doch schon interessieren wenn du es am  
> Laufen
> hast ;-)

Beide Methoden oben, habe ich zum laufen gebracht, auch auf
deinem Favorisiertem System FreeBSD (stimmt doch, Gell?!).

Aber ich mach es eigentlich nicht mehr, da es nicht vernünftig Pfleg
bar ist. Man verliert damit leider den Komfort der Ports.

Ich habe PHP5 mit 'hand' kompiliert und ihm einen Komplet anderen PREFIX
(/usr/local/php5) gegeben. Was man dann später bei jedem neuen Modul
bedenken muss..

Im Apache muss man noch beim Modulaufruf von PHP5 einen Absolute Pfad
verwenden. Das wahr es schon ;) Aber ich hätte auch lieber eine
bessere/einfacher Lösung falls Jemand eine hat :)

Gruß
   Aron


php::bar PHP Wiki   -   Listenarchive