Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Interner Serverfehler 500 Apache 2.2 & PHP 5 unter XP [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Interner Serverfehler 500 Apache 2.2 & PHP 5 unter XP


 
Crake
28-09-2009, 03:55 
 
Ich bin langsam echt am Verzweifeln - es ist ja nicht so, dass ich zum ersten Mal den Apache und PHP installiere, nur dieses Mal bin ich wirklich mit meinem Latein am Ende.

Sobald ich über localhost eine PHP-Datei im Browser aufrufe, erhalte ich einen Internen Serverfehler 500.

Verwendet wird folgende PHP-Version: 5.2.11 VC6 x86 Thread Safe
Aber auch ein Downgrade schaffte keinerlei Abhilfe, also auch die Verwendung einer zuvor erfolgreich betriebenen Versionskombination von Apache & PHP erzeugt dasselbe Problem.

Ich habe auch testweise mal auf den Installer zurückgegriffen, keinerlei Extensions installiert - ebenfalls kein Erfolg.

Der IIS ist nicht installiert.
Die PHP.ini ist testweise unverändert.
MySQL läuft ordnungsgemäß.
C++ Redistributables sind installiert.

Die httpd.conf (gekürzt)
ServerName 127.0.0.1:80
DocumentRoot "D:/Inetpub/wwwroot"

<Directory "D:/Inetpub/wwwroot">

AllowOverride None
Order allow,deny
Allow from all

</Directory>

PHPIniDir "D:/PHP/"
LoadModule php5_module "D:/PHP/php5apache2_2.dll"
AddType application/x-httpd-php .php

Apache logs7error.log
[Mon Sep 28 02:11:43 2009] [notice] Parent: Received restart signal -- Restarting the server.
[Mon Sep 28 02:11:43 2009] [notice] Child 3508: Exit event signaled. Child process is ending.
[Mon Sep 28 02:11:43 2009] [notice] Apache/2.2.11 (Win32) PHP/5.2.10 configured -- resuming normal operations
[Mon Sep 28 02:11:43 2009] [notice] Server built: Dec 10 2008 00:10:06
[Mon Sep 28 02:11:43 2009] [notice] Parent: Created child process 2508
[Mon Sep 28 02:11:44 2009] [notice] Child 2508: Child process is running
[Mon Sep 28 02:11:44 2009] [notice] Child 2508: Acquired the start mutex.
[Mon Sep 28 02:11:44 2009] [notice] Child 2508: Starting 64 worker threads.
[Mon Sep 28 02:11:44 2009] [notice] Child 3508: Released the start mutex
[Mon Sep 28 02:11:45 2009] [notice] Child 2508: Starting thread to listen on port 80.
[Mon Sep 28 02:11:45 2009] [notice] Child 3508: All worker threads have exited.
[Mon Sep 28 02:11:45 2009] [notice] Child 3508: Child process is exiting

Wenn irgendwer eine Ahnung hat bzw. einen Hinweis geben kann, dann bin ich wirklich dankbar.

 
AmicaNoctis
28-09-2009, 04:03 
 
Hallo,

ist der Apache direkt von apache.org runtergeladen oder aus einem XAMP-Bundle bzw. irgend einer anderen Fremddistribution? Wurden bei der letzten Installation irgendwelche DLLs nach system32 kopiert?

Gruß,

Amica

 
pekka
28-09-2009, 08:51 
 
Und ist das auch gnaz bestimmt die richtige error.log, aus der Du zitierst?

 
Crake
28-09-2009, 17:50 
 
Der originale Apache von apache.org und auch die korrekte error.log (Apache-verzeiochnis/logs/error.log).

 
AmicaNoctis
28-09-2009, 18:30 
 
Der originale Apache von apache.org und auch die korrekte error.log (Apache-verzeiochnis/logs/error.log).

Ok, das ist gut (wg. VC6 vs. VC9), nur leider hab ich dann auch keine Idee. Die PHP extensions hast du ja alle aus, wie du sagtest? DLLs hast du auch nie wild rumkopiert?

 
Crake
28-09-2009, 18:44 
 
Nee, gar nicht. Im Prinzip ganz einfache Standardinstallation.

Also erklären kann ich es mir nicht, kann mir höchstens noch vorstellen, dass Dreamweaver dazwischenfunkt, aber wie gesagt, es lief ja früher auch.

 
onemorenerd
28-09-2009, 19:13 
 
Versuch mal ServerName localhost:80 statt der IP und prüfe, ob bereits ein anderer Prozess auf Port 80 lauscht.

 
Crake
28-09-2009, 20:01 
 
Versuch mal ServerName localhost:80 statt der IP und prüfe, ob bereits ein anderer Prozess auf Port 80 lauscht.

Schon geschaut. Außerdem ließe sich der Apache dann nicht starten.

 
pekka
28-09-2009, 20:20 
 
Ich sehe in deinem Log-Auszug aber keine Fehlermeldung, und das kann bei einem 500er eigentlich nicht sein. Bist du ganz ganz sicher, daß es nicht irgendwo eine Virtual-Host-Deklaration mit einer eigenen Error.log gibt? Ist mir schon öfter passiert....

 
Crake
28-09-2009, 20:23 
 
Ich bin mir ganz sicher. Habe testweise mal eine Extension installiert, welche als Datei gar nicht vorhanden war. Der Fehler wurde in der error.log korrekt ausgegeben.

 
pekka
28-09-2009, 20:25 
 
Seltsam!

Gibt es vielleicht was in Systemsteuerung > Verwaltung > Ereignisanzeige > System? Wenn es was auf Dienstebene ist....
Vielleicht mal das PHP-Logging aktivieren? Vielleicht hängt es dort irgendwo?

 
AmicaNoctis
28-09-2009, 20:27 
 
Kommt der 500 auch beim Aufruf einer existierenden nicht-PHP-Datei? Kommt er noch, wenn du PHP in der httpd.conf ganz abschaltest? Hast du in der httpd.conf mal die Servermodule abgeschaltet?

 
Crake
28-09-2009, 21:24 
 
Seltsam!

Du sagst es. :(

Gibt es vielleicht was in Systemsteuerung > Verwaltung > Ereignisanzeige > System? Wenn es was auf Dienstebene ist....
Vielleicht mal das PHP-Logging aktivieren? Vielleicht hängt es dort irgendwo?

Kriegen wir noch seltsamer hin: Ereignisanzeige weist keinen Fehler auf. Das Aktivieren des PHP-Logs bringt keinerlei Einträge zum Vorschein.

AmicaNoctis
Kommt der 500 auch beim Aufruf einer existierenden nicht-PHP-Datei?

Dann erhalte ich erwartungsgemäß einen 404.

Kommt er noch, wenn du PHP in der httpd.conf ganz abschaltest?

Nein.

Hast du in der httpd.conf mal die Servermodule abgeschaltet?

Ja, habe auch eine Minimalkonfiguration getestet.

 
Crake
28-09-2009, 21:27 
 
Argh, ich bin ein Idiot. Das hätte ich mal eher testen sollen.

Eine absolut einfache PHP-Datei lässt sich erfolgreich ausführen. Da keine Extensions installiert sind, kann ich wohl davon ausgehen, dass MySQL die Fehlerursache ist.

Ich weiss zwar auch noch nicht weshalb, aber damit kann man erstmal arbeiten.

 
AmicaNoctis
28-09-2009, 21:29 
 
Dann erhalte ich erwartungsgemäß einen 404.

Das ist aber nicht erwartungsgemäß ;) Ich sprach von einer existierenden nicht-PHP-Datei und nicht von einer nichtexistierenden PHP-Datei.

Ich vermute, es kann nur noch an der php.ini liegen. Hast du dort schon alle Pfade geprüft, nicht dass da noch irgendein Standard-Linux-Beispielpfad (/usr/var/...) drin steht?

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 04:28 Uhr.