PHP5 nun in bestimmten Ordner ausführen

Status
Not open for further replies.

tanjix

Registered User
Hallo,

mein Server ist ein Confixx-Server (3.1.2), Apache 2.0.5.4, PHP4.3.10-16 als Apache-Modul. PHP5 ist als CGI kompiliert und funktioniert tadellos. Nun will ich, dass PHP5 bei einem Confixx User nur in einem bestimmten Ordner eines Confixx Users aktiv wird. Alles andere mit PHP4.

Habe dazu eine <Directory "/var/www/confixx/html/test"> ... </Directory> Direktive erstellt.
Das ganze funktioniert im Doc-Root von Confixx selbst (also dort wo die Daten von Confixx liegen) wunderbar, nicht aber jedoch, wenn ich die Directory-Direktive auf den Pfad /var/www/web0/html/test ändere. (es soll also nur im Ordner /test des Users web0 PHP5 anstatt PHP4 ausgeführt werden.
Dort wird mir dann die .php Datei zum Download angeboten.

Meine Direktive sieht wie folgt aus:

ScriptAlias /php5rocks /usr/local/php5/bin
<Directory "/var/www/web0/html/test">
AllowOverride None
AllowOverride Indexes AuthConfig Limit FileInfo
Options +ExecCGI +FollowSymLinks +FollowSymLinks +Includes +MultiViews
Action php5-cgi /php5rocks/php
AddType php5-cgi .php
</Directory>

Wenn ich die so speichere und den Apache restarte, steht im error.log:

[Tue May 09 13:28:49 2006] [warn] Cannot get media type from 'php5-cgi'
[Tue May 09 13:28:49 2006] [warn] Cannot get media type from 'php5-cgi'
[Tue May 09 13:28:49 2006] [warn] Cannot get media type from 'php5-cgi'
[Tue May 09 13:28:49 2006] [error] [client 84.16.225.253] Premature end of script headers: php

Ändere ich die Direktive in:

ScriptAlias /php5rocks /usr/local/php5/bin
<Directory "/var/www/web0/html/test">
AllowOverride None
AllowOverride Indexes AuthConfig Limit FileInfo
Options +ExecCGI +FollowSymLinks +FollowSymLinks +Includes +MultiViews
Action php5-cgi application/php5rocks/php
AddType application/php5-cgi .php
</Directory>

dann werden mir .php Dateien zum Download angeboten und niht mit PHP5 ausgeführt.

Hat hier jemand den entscheidenden Tipp?

Vielen Dank!
 
Ich mag Doppelposts eigentlich nicht wirklich.
Ich habe dir ja bereits schon drauf geantwortet.
Zu dem "Premature end of script headers":
Das besagt, dass es wahrscheinlich mit suexec ein Problemchen gibt.
Schau dir hiervon mal die Logs an.
Musst wahrscheinlich suexec mal schnell neukompilieren.
Vielleicht kommst du dann ja weiter.
Und /usr/local/php5/bin/ hast du entsprechend "freigegeben", d.h. so wie im HowTo beschrieben vollzogen?
Seh ich nämlich nichts von hier.
 
Status
Not open for further replies.
Back
Top