Ik heb al verschillende keren Apache + PHP geinstalleerd op mijn NSLU2 (NAS met aangepaste firmware, (Unslung)), tot nog toe altijd zonder problemen. Sinds een update van Apache werkte de webserver echter niet meer zoals zou moeten. Na een hoop gepuzzel en herinstallaties heb ik het probleem weten te herleiden tot PHP.
Het probleem is dat zodra is Apache opstart met een verwijzing om de PHP modules te laden, de hele webserver vastloopt. (ik krijg een zombieproces te zien van de webserver [httpd]). Mijn website is dan ook niet online. Ik laad de PHP module via het bestandje php.conf in de map /opt/etc/apache2/conf.d. De configuratiebestanden in deze map worden geladen via een regel in httpd.conf (zie onder).
Zodra ik ofwel de regel met "LoadModule…" of de regel met "Include …" weghaal, dan start de webserver gewoon op, echter zonder PHP (wat logisch is). Maar ik wil natuurlijk dat PHP ook werkt. Wat doe ik toch fout???
Wat heb ik al geprobeerd.
Inhoud httpd.conf (klein gedeelte van)
Laatste regels in error_log
[Sat Sep 15 22:53:49 2007] [notice] Digest: generating secret for digest authentication ...
[Sat Sep 15 22:53:49 2007] [notice] Digest: done
[Sat Sep 15 22:53:52 2007] [notice] Apache/2.2.6 (Unix) mod_ssl/2.2.6 OpenSSL/0.9.7m DAV/2 configured -- resumin$
Wat is wellicht verder nuttig als achtergrondinformatie
De grote vraag is dus, waarom crasht Apache zodra ik de PHP module laadt. Ik weet echt niet meer waar ik moet zoeken.
Het probleem is dat zodra is Apache opstart met een verwijzing om de PHP modules te laden, de hele webserver vastloopt. (ik krijg een zombieproces te zien van de webserver [httpd]). Mijn website is dan ook niet online. Ik laad de PHP module via het bestandje php.conf in de map /opt/etc/apache2/conf.d. De configuratiebestanden in deze map worden geladen via een regel in httpd.conf (zie onder).
Zodra ik ofwel de regel met "LoadModule…" of de regel met "Include …" weghaal, dan start de webserver gewoon op, echter zonder PHP (wat logisch is). Maar ik wil natuurlijk dat PHP ook werkt. Wat doe ik toch fout???
Wat heb ik al geprobeerd.
- Gekeken op de website van PHP bij de FAQ
- Gekeken in het Forum, hier vond ik wel mensen met vergelijkbare problemen, maar daar kwam het er vaak op neer dat een van de bovenstaande regels ontbraken ofzo.
- Apache en PHP opnieuw geinstalleerd
- Code uit php.conf in httpd.conf zelf gezet --> zelfde resultaat
- Gekeken of /opt/libexec/libphp5.so er is --> die is er
- Gekeken in /opt/var/apache2/log in de logfiles --> staan volgens mij geen rare dingen in
LoadModule php5_module libexec/libphp5.so AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps DirectoryIndex index.php
Inhoud httpd.conf (klein gedeelte van)
Include etc/apache2/conf.d/*.conf ServerRoot "/opt"
Laatste regels in error_log
[Sat Sep 15 22:53:49 2007] [notice] Digest: generating secret for digest authentication ...
[Sat Sep 15 22:53:49 2007] [notice] Digest: done
[Sat Sep 15 22:53:52 2007] [notice] Apache/2.2.6 (Unix) mod_ssl/2.2.6 OpenSSL/0.9.7m DAV/2 configured -- resumin$
Wat is wellicht verder nuttig als achtergrondinformatie
- PHP 5.2.3-2
- PHP-Apache 5.2.3-1
- Apache 2.2.6-3
- NSLU2 draait op een unix achtig systeem (Unslung), voor meer info zie www.nslu2-linux.org
- Installatie gaat via IPKG install PHP, IPKG install Apache. Dit zijn dus Packages die vanzelf geinstalleerd worden.
- Een PHP info pagina maken werkt niet, aangezien PHP niet werkt. Wel via het commando php -i
Server API => Command Line Interface Virtual Directory Support => enabled Configuration File (php.ini) Path => /opt/etc Loaded Configuration File => /opt/etc/php.ini Scan this dir for additional .ini files => /opt/etc/php.d additional .ini files parsed => /opt/etc/php.d/gd.ini, /opt/etc/php.d/ldap.ini, /opt/etc/php.d/mbstring.ini, /opt/etc/php.d/mysql.ini
De grote vraag is dus, waarom crasht Apache zodra ik de PHP module laadt. Ik weet echt niet meer waar ik moet zoeken.
Nefit EnviLine IDU Monoblock E 7 E-S, Boiler 200 L, Buffervat 50L. BQQKees