# Problem mit php5



## sarroti (14. März 2009)

Hallo alle zusammen,

Ich habe ein Problem mit der zusätzlichen Konfigurationeinbindung von PHP5


Ich habe einen Linux Server und als Distribution CentOS. Konfiguriert ist PHP 4.3

geladen werden die Konfigurationen von der httpd.conf

Code:

```
#
# Load config files from the config directory "/etc/httpd/conf.d".
#
Include conf.d/*.conf
```

Die php.conf sieht so aus

```
Code:

#
# PHP is an HTML-embedded scripting language which attempts to make it
# easy for developers to write dynamically generated webpages.
#

LoadModule php4_module modules/libphp4.so

#
# Cause the PHP interpreter to handle files with a .php extension.
#
AddType application/x-httpd-php .php .php4 .php3
# AddType application/x-httpd-php-source .phps

#
# Add index.php to the list of files that will be served as directory
# indexes.
#
DirectoryIndex index.php
```

*Kompiliert habe ich Php5 so*
Code:

./configure --enable-memory-limit --enable-force-cgi-redirect --enabletrack-
vars --with-pcre-regex --with-sqlite --without-mm --enable-fastcgi --
prefix=/usr/local/php5

Alles ok soweit ..

Meine Frage ich möchte jetzt php5 zusätzlich als CGI einbinden was muss hinzugefügt werden ?

Wenn ich das so mache
Code:


```
ScriptAlias /php/ "/usr/local/php5/bin/"

AddType application/x-httpd-php5 .php5

Action application/x-httpd-php5 "/php5/php.exe""
```

Entweder mit Action Fehler 500 Integral und ohne wird mir die Datei phpinfo.php5 als download angeboten.

Ich hab da irgentwo einen Logik Fehler drinne. Wer kann mir weiterhelfen ?


----------



## froddie (14. März 2009)

hallo,

was sagt denn das Log-File zum 500er Error?
Normalerweise müsste der Fehler in /var/log/apache2/error.log oder in einem andern definierten ErrorLog ersichtlich sein (wird dort näher beschrieben).

Ich nehme zudem an, dass du einen Apache-Webserver oder ähnliches hast: Hast du dort schon alles eingerichtet?


----------



## sarroti (15. März 2009)

Hallo Froddie,

Vielen Dank für deine Antwort. 
Der A. Webserver ist komplett eingerichtet. Es geht nur um die Module so dass ich Php4 bereits installiert mit Php5 zusätzlich integrieren kann. 

Bei mir liegen die logs im Verzeichniss /var/log/httpd

access_log


```
127.0.0.1 - - [15/Mar/2009:16:54:17 +0100] "GET /phpinfo.php5 HTTP/1.1" 500 603 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.0.6) Gecko/20060728 Firefox/1.5.0.6"
```

und error_log


```
[Sun Mar 15 16:54:17 2009] [error] [client 127.0.0.1] Premature end of script headers: php
```

Was muss ich als nächstes machen ?

Gruss Rotti


----------



## froddie (15. März 2009)

Du kannst php4 und 5 nicht beide als modul laufen lassen. Mindestens eins davon muss als cgi konfiguriert sein.



> Action application/x-httpd-php5 "/php5/php.exe""



Ich kann mich täuschen, aber: ne exe auf nem Linux-Server?

Folgendes habe ich nach etwas googlen gefunden:

ScriptAlias /php5/ "/pfad/zum/php5/verzeichnis/als/cgi"

<Directory "/pfad/zum/php5/verzeichnis/als/cgi">
Order allow,deny
allow from all
Options ExecCGI
AllowOverride None
</Directory>

Action php5-script /php5/phpcgibinary

AddHandler php5-script .php5


Ich hoffe, dass dir das weiterhilft


----------



## sarroti (15. März 2009)

Hallo Froddie  , erstmal vielen Dank für deine Mithilfe

Ich habe das jetzt mal so ausgeführt wie beschrieben 
	
	
	



```
ScriptAlias /php5/ "/usr/local/php5/bin"

<Directory "/usr/local/php5/bin">
Order allow,deny
allow from all
Options ExecCGI
AllowOverride None
</Directory>

Action php5-script /php5/phpcgibinary

AddHandler php5-script .php5
```

Apache neu gestartet und erhalte jetzt

```
Not Found

The requested URL /php5/phpcgibinary/phpinfo.php5 was not found on this server.
```

Die phpinfo.php5 liegt im Verzeichniss /var/www/html

Eine weitere im /var/www/cgi-bin/


```
The requested URL /php5/phpcgibinary/cgi-bin/phpinfo.php5 was not found on this server.
```


Könnte es vielleicht noch an zusätzlichen Konfiguartionseinstellungen liegen wie suexec oder php.ini ? Oder ist mir ein Fehler beim kompilieren aufgetreten ? 

Gruss Rotti


----------



## froddie (16. März 2009)

du musst dden Pfad /php5/phpcgibinary noch anpassen. So wird dein FIle wahrscheinlich nicht heißen.

Bei mir existiert ein Pfad /usr/bin/php5-cgi, ich denke so einen ähnlichen solltest du auch haben.


----------

