cannot read pid file
Robert
- webserver
Grüßt euch!
// OS: windows2000
Ich fange an, zu lernen was man in der httpd.conf alles so machen kann. Jedes mal müsste ich den Server neustarten, wenn ich die Datei ändere, doch leider kann ich Apache nciht neustarten.
Neustarten tu ich so:
RUN -> cmd -> cd C:...\Server\Apache -> apache.exe -k restart
=> Apache cannot red pid file C:...\Server\Apache\logs\httpd.pid
Weiß wer was ich machen soll und was der Grund dafür ist?
Danke schonmal
guten Morgen,
// OS: windows2000
nett. Damit kann man einen Apache völlig problemlos fahren.
Ich fange an, zu lernen was man in der httpd.conf alles so machen kann. Jedes mal müsste ich den Server neustarten, wenn ich die Datei ändere, doch leider kann ich Apache nciht neustarten.
Du bleibst die Erklärung schuldig, weshalb du das nicht kannst.
Neustarten tu ich so:
RUN -> cmd -> cd C:...\Server\Apache -> apache.exe -k restart
Ähm, ja. Was bedeutet hier "RUN"? Das ist etwas, was ich bei Win2000 noch nie gesehen habe.
Wieso gehst du über die Konsole, hast du denn deinen Apache (welche Version hast du überhaupt?) nicht als Dienst eingerichtet? Gibt es im Startmenü keine Pictogramme für deinen Apache?
=> Apache cannot red pid file C:...\Server\Apache\logs\httpd.pid
Böse, sehr böse. Erst einmal steht da bestimmt nicht "cannot red",»»
Danke schonmal
Danke schonmal sondern es steht da "cannot read", was einen klitzekleinen Unterschied macht. Ursachen dafür kann es mehrere geben,
Weiß wer was ich machen soll und was der Grund dafür ist?
Du verdrehst die Reihenfolge. Man muß erst den "Grund" bzw. den Anlaß für eine Fehlermeldung kennen, danach kann man überlegen, was dagegen zu machen ist.
Deine Fehlermeldung solltest du zunächst wörtlich nehmen. Apache kann bei "restart" seine PID nicht finden. Das bedeutet, entweder ist keine da, oder sie liegt woanders als in der httpd.conf vorgegeben, oder sie ist "noch" da, weil der Server vorher unsauber heruntergefahren wurde und ähnliches.
Solange du an der Konfiguration herumbasteln mußt, ist es eh etwas klüger,den Apache erst einmal ganz und gar zu stoppen. Dazu schaust du bitte im Taskmanager nach, ob es noch irgendeinen "Apache-Prozeß" gibt (im Normalfall gibt es zwei) und beendest den einfach. Danach schaust du in dem Verzeichnis, in dem die PID liegen soll, nach, ob noch eine da ist, und wenn, wirfst du sie erbarmunglos weg. Sobald du dann mit deiner Schreiberei an der Konfigurationsdatei fertig bist, startest du den Server neu, aber nicht mit "restart", sondern lediglich mit "start" bzw. dem dazugehörenden Icon im Startmenü.
Du solltest ganz einfach mal nicht nur deinen Apache, sondern bei der Gelegenhait auch gleich den gesamten Rechner neu starten, dann hat sich dein Problem möglicherweise von alleine geklärt.
Grüße aus Berlin
Christoph S.
Hi Christoph,
Solange du an der Konfiguration herumbasteln mußt, ist es eh etwas klüger,den Apache erst einmal ganz und gar zu stoppen.
wozu das denn?
Ich kann prima im laufenden Betrieb die Konfiguration ändern, mit "apachectl configtest" deren syntaktische Korrektkeit testen (wie der commandline switch dafür unter Windows heiß, weiß ich gerade nicht auswendig) und dann einen "graceful" restart machen, sobald ich mit meiner Änderung zufrieden bin.
Einen Grund für eine Betriebsunterbrechung während dieser (ggf. längeren) Phase sehe ich jedenfalls nicht.
Viele Grüße
Michael
hallo Michael,
Solange du an der Konfiguration herumbasteln mußt, ist es eh etwas klüger,den Apache erst einmal ganz und gar zu stoppen.
wozu das denn?
Um solchen "Problemen" wie einer scheinbar fehlenden PID zu entgehen ;-)
Wird der Apache ganz und gar gestoppt, wird auch unter Windows die PID gelöscht und beim nächsten Start ebenso selbstverständlich neu angelegt.
Ich kann prima im laufenden Betrieb die Konfiguration ändern, mit "apachectl configtest" deren syntaktische Korrektkeit testen (wie der commandline switch dafür unter Windows heiß, weiß ich gerade nicht auswendig) und dann einen "graceful" restart machen, sobald ich mit meiner Änderung zufrieden bin.
Das geht leider nicht genausogut mit Windows. Zum Testen der Syntax würde in einer DOS-Box der Befehl "apache -t" eingesetzt werden können, auch bei noch weiterlaufendem Server. "graceful" funktioniert in den mir bekannten Windows-Installationen nicht, ich lasse mich aber gerne eines Besseren belehren.
Wenn es um eine Unix/Linux-Installation ginge, wären wir absolut identischer Ansicht.
Einen Grund für eine Betriebsunterbrechung während dieser (ggf. längeren) Phase sehe ich jedenfalls nicht.
Nicht zwingend, richtig. Deshalb habe ich ja auch vorsichtig von "etwas klüger" gesprochen. Nur: wenn die PID eh schon "fort" ist (aus welchen Gründen auch immer), sollte man eventuell noch laufende Apache-Prozesse (auf einer Windows-Kiste) tatsächlich beenden und mal in die logs schauen, ob es da Aufklärung gibt.
Eine "Betriebsunterbrechung" hat es, wenn die PID nicht mehr vorhanden ist, eh schon gegeben. Und innerhalb eines Testbetriebs ist das auch nicht gar so schlimm. Was für einen "produktiven Sever" tödlich wäre, ist bei einer Testinstallation unwichtig.
Grüße aus Berlin
Christoph S.