You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users-de@httpd.apache.org by 6b...@6bone.informatik.uni-leipzig.de on 2007/10/31 19:31:17 UTC

stabiliaetsprobleme mit apache-2.2.6

Hallo,

ich benutze den apache-2.2.6 mit folgender Konfiguration:

Server Version: Apache/2.2.6 (Unix) mod_ssl/2.2.6 DAV/2 
mod_auth_pgsql/2.0.3 PHP/5.2.4

Betriebssystem netbsd (Multiprozessor)

Der Apache selbt laeuft stabil. Probleme treten nur beim Logrotate auf. 
Wird ein SIGHUP an den Apache kommt es in seltenen Faellen vor, dass der 
Apache nach dem Erhalt des Signales nicht mehr korrekt arbeitet. Teile der 
apache-config werden jetzt zusammen mit den Webseiten ausgeliefert. Im 
errorlog findet man einen Eintrag (siehe unten).

Das Verhalten ist recht suboptimal, da ich jetzt nach jedem logrotate 
nachsehen muss ob der Apache noch richtig arbeitet.

Hat jemand eine Idee was man gegen das Verhalten tun kann?


Schon mal danke
Uwe


##### Auszug aus dem error_log #####

[Wed Oct 31 12:00:12 2007] [notice] SIGHUP received.  Attempting to 
restart
[Wed Oct 31 12:00:24 2007] [notice] Digest: generating secret for digest 
authentication ...
[Wed Oct 31 12:00:24 2007] [notice] Digest: done
[Wed Oct 31 12:00:24 2007] [notice] Apache/2.2.6 (Unix) mod_ssl/2.2.6 O} eq "Snake Oil, Ltd." \\\n#            and %{SSL_CLIENT_S_DN_OU} in {"Staff", "CA", "Dev"} \\\n#            and %{TIME_WDAY} >= 1 and %{TIME_WDAY} <= 5 \\\n#            and %{TIME_HOUR} >= 8 and %{TIME_HOUR} <= 20       ) \\\n#           or %{REMOTE_ADDR} =~ m/^192\\.76\\.162\\.[0-9]+$/\n#</Location>\n\n#   SSL Engine Options:\n#   Set various options for the SSL engine.\n#   o FakeBasicAuth:\n#     Translate the client X.509 into a Basic Authorisation.  This means that\n#     the standard Auth/DBMAuth methods can be used for access control.  The\n#     user name is the `one line' version of the client's X.509 certificate.\n#     Note that no password is obtained from the user. Every entry in the user\n#     file needs this password: `xxj31ZMTZzkVA'.\n#   o ExportCertData:\n#     This exports two additional environment variables: SSL_CLIENT_CERT and\n#     SSL_SERVER_CERT. These contain the PEM-encoded certificates of the\n#     server (always existing) and the client (only existing when client\n#     authentication is used). This can be used to import the certificates\n#     into CGI scripts.\n#   o StdEnvVars:\n#     This exports the standard SSL/TLS related `SSL_*' environment variables.\n#     Per default this exportation is switched off for performance reasons,\n#     because the extraction step is an expensive operation and is usually\n#     useless for serving static content. So one usually enables the\n#     exportation for CGI and SSI requests only.\n#   o StrictRequire:\n#     This denies access when "SSLRequireSSL" or "SSLRequire" applied even\n#     under a "Satisfy any" situation, i.e. when it applies access is denied\n#     and no other module can change it.\n#   o OptRenegotiate:\n#     This enables optimized SSL connection renegotiation handling when SSL\n#     directives are used in per-directory context. \n#SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire\n<FilesMatch "\\.(cgi|shtml|phtml|php)$">\n    SSLOptions +StdEnvVars\n</FilesMatch>\n<Directory "/usr/pkg/libexec/cgi-bin">\n    SSLOption\x84\xc0\x06\bT\xc0\x06\bH\xc0\x06\b\xd03\x1a\b0\xe0\x1f\b\xe9 DAV/2 mod_auth_pgsql/2.0.3 PHP/5.2.4 configured -- resuming normal operations

Re: stabiliaetsprobleme mit apache-2.2.6

Posted by 6b...@6bone.informatik.uni-leipzig.de.
Hallo Falk,

die config wurde wohl abgeschnitten. dann halt einfach als link zum 
download:

 	https://6bone.informatik.uni-leipzig.de/httpd.conf.tar.bz2


apache prozesse werden erfolgreich abgebaut. hier scheint es keine 
probleme zu geben. den server status kann man unter

 	http://139.18.25.35/server-status

anschauen.

Ich habe einige seiten von denen auf via php auf eine postgresql datenbank 
zugegriffen wird. das koennte also passen.

Zur bauweise von apache und php kann ich nichts genaues sagen. ich habe 
die binaries aus den pkgsrc gebaut. leider bin ich nicht so firm, dass ich 
aus dem pkgsrc die ./configure options extrahieren koennte :-(


Uwe

--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
           sonstige Anfragen an users-de-help@httpd.apache.org
--------------------------------------------------------------------------


Re: stabiliaetsprobleme mit apache-2.2.6

Posted by ap...@spam.huckley.de.
Hallo Uwe,

bittekein tofu...

6bone@6bone.informatik.uni-leipzig.de schrieb:

> hier erstmal meine config.

wenn Du was angeanhen haben solltest, so ist das nicht angekommen..

> Da der apache mit mod_php doch relativ verbreitet kann ich mir nicht
> vorstellen dass es daran liegt.

ich ein ähnliches Verhalten mal mit mod_php erlebt, da war ein
Datenbankinterface die Uhrsache, das die apachen prozesse nicht wirklich
gestorben sind...

das ganze klingt ein wenig dannach...

Deshalb die Frage, siehst Du in den server-status, den fall, das wenn
der apche nichts zu tun hat, auch wieder prozesse erfolgreich abgebaut
werden ?

wogegen und wie hat Du das php gebaut?

fragt falk
-- 
Überwachungsstaat - Nein Danke! Vorratsdatenspeicherung Abschaffen!
http://www.vorratsdatenspeicherung.de

--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
           sonstige Anfragen an users-de-help@httpd.apache.org
--------------------------------------------------------------------------


Re: stabiliaetsprobleme mit apache-2.2.6

Posted by 6b...@6bone.informatik.uni-leipzig.de.
Hallo,

hier erstmal meine config. ich habe nur den teil mit den 
Zugriffsbeschraenkungen vom proxy rausgenommen sowie die Blocklist vom 
proxy (wollte ich nicht durch die liste posten).

Die Aussage, dass der Apache nur nach einem SIGHUP Probleme macht muss ich 
zuruecknehmen. Auch nach einem SIGUSR1 kann es vorkommen, dass der Apache 
teile der config mit auf den Websiten ausliefert. Ist gerade passiert.

Was die Frage mit dem mod_php betrifft: kann ich leider nicht so einfach 
testen da der Server produktiv ist. Wenn ich das php abklemme laufen 
einige Seiten nicht mehr.

Da der apache mit mod_php doch relativ verbreitet kann ich mir nicht 
vorstellen dass es daran liegt. da wuerden doch viel mehr anwender 
meckern. kann der fehler im mod_proxy liegen? ich denke mal, dass der 
apache eher selten als proxy verwendet wird, und wenn dann nicht mit mehr 
als 300 parallelen verbindungen wie bei mir.


Uwe


On Fri, 2 Nov 2007, apache@spam.huckley.de wrote:

> Date: Fri, 02 Nov 2007 11:05:47 +0100
> From: apache@spam.huckley.de
> Reply-To: users-de@httpd.apache.org
> To: users-de@httpd.apache.org
> Subject: Re: stabiliaetsprobleme mit apache-2.2.6
> 
> 6bone@6bone.informatik.uni-leipzig.de schrieb:
>> ich habe die netbsd-default-config (prefork) verwendet.
>
> da ich netbsd-default-config nicht kenne, sage mir doch wo ich sie finde...
>
>> mod_auth_pgsql und mod_php (5.2.4).
>
> nur um das Problem mal einzukreisen, ohne mod_php verhält sich der
> apache genau so?
>
>> zu den Prozesse im Graceful: leider befinden sich die von mir
>> angesprochenen prozesse oft auch nach 1-2 stunden noch im Graceful. so
>> lange duerfte kein request dauern.
>
> schneller workaround: die betreffenden pids nach dem gracful manuell
> killen (nicht schön, aber wirkungsvoll)
>
> falk
>
>
> --------------------------------------------------------------------------
>                Apache HTTP Server Mailing List "users-de"
>      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
>           sonstige Anfragen an users-de-help@httpd.apache.org
> --------------------------------------------------------------------------
>

Re: stabiliaetsprobleme mit apache-2.2.6

Posted by ap...@spam.huckley.de.
6bone@6bone.informatik.uni-leipzig.de schrieb:
> ich habe die netbsd-default-config (prefork) verwendet.

da ich netbsd-default-config nicht kenne, sage mir doch wo ich sie finde...

> mod_auth_pgsql und mod_php (5.2.4).

nur um das Problem mal einzukreisen, ohne mod_php verhält sich der
apache genau so?

> zu den Prozesse im Graceful: leider befinden sich die von mir
> angesprochenen prozesse oft auch nach 1-2 stunden noch im Graceful. so
> lange duerfte kein request dauern.

schneller workaround: die betreffenden pids nach dem gracful manuell
killen (nicht schön, aber wirkungsvoll)

falk


--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
           sonstige Anfragen an users-de-help@httpd.apache.org
--------------------------------------------------------------------------


Re: stabiliaetsprobleme mit apache-2.2.6

Posted by 6b...@6bone.informatik.uni-leipzig.de.
Hallo,

ich habe die netbsd-default-config (prefork) verwendet. Dazu 
mod_auth_pgsql und mod_php (5.2.4).

da der apache auch als proxy verwendet wird und die last dadurch recht 
hoch ist habe ich die anzahl der prozesse auf 384 hochgesetzt. diese sind 
relativ oft zu 100% ausgelastet. die haeufigkeit des problems mit SIGHUP 
scheint nach erhoehung der prozessanzahl gestiegen zu sein.

zu den Prozesse im Graceful: leider befinden sich die von mir 
angesprochenen prozesse oft auch nach 1-2 stunden noch im Graceful. so 
lange duerfte kein request dauern.

Uwe


Compiled in modules:
   core.c
   mod_authn_file.c
   mod_authn_dbm.c
   mod_authn_anon.c
   mod_authn_dbd.c
   mod_authn_default.c
   mod_authn_alias.c
   mod_authz_host.c
   mod_authz_groupfile.c
   mod_authz_user.c
   mod_authz_dbm.c
   mod_authz_owner.c
   mod_authz_default.c
   mod_auth_basic.c
   mod_auth_digest.c
   mod_isapi.c
   mod_file_cache.c
   mod_cache.c
   mod_disk_cache.c
   mod_mem_cache.c
   mod_dbd.c
   mod_bucketeer.c
   mod_dumpio.c
   mod_echo.c
   mod_example.c
   mod_case_filter.c
   mod_case_filter_in.c
   mod_ext_filter.c
   mod_include.c
   mod_filter.c
   mod_charset_lite.c
   mod_deflate.c
   mod_log_config.c
   mod_log_forensic.c
   mod_logio.c
   mod_env.c
   mod_mime_magic.c
   mod_cern_meta.c
   mod_expires.c
   mod_headers.c
   mod_ident.c
   mod_usertrack.c
   mod_unique_id.c
   mod_setenvif.c
   mod_version.c
   mod_proxy.c
   mod_proxy_connect.c
   mod_proxy_ftp.c
   mod_proxy_http.c
   mod_proxy_ajp.c
   mod_proxy_balancer.c
   mod_ssl.c
   prefork.c
   http_core.c
   mod_mime.c
   mod_dav.c
   mod_status.c
   mod_autoindex.c
   mod_asis.c
   mod_info.c
   mod_cgi.c
   mod_dav_fs.c
   mod_vhost_alias.c
   mod_negotiation.c
   mod_dir.c
   mod_imagemap.c
   mod_actions.c
   mod_speling.c
   mod_userdir.c
   mod_alias.c
   mod_rewrite.c
   mod_so.c


On Fri, 2 Nov 2007, apache@spam.huckley.de wrote:

> Date: Fri, 02 Nov 2007 07:09:53 +0100
> From: apache@spam.huckley.de
> Reply-To: users-de@httpd.apache.org
> To: users-de@httpd.apache.org
> Subject: Re: stabiliaetsprobleme mit apache-2.2.6
> 
> Das einige Prozesse im Graceful finishing bleiben, ist beim gracful
> gewünscht, das sind die Prozesse die gerade noch Requests bearbeiten,
> die Prozesse sollten nach dem die Requests abgefrühstückt sind,
> verschwinden.
>
> Erzähl mahl mehr über den apachen, z.B. mit welchen Modulen Du Ihn
> gebaut hast usw...
>
> falk
>
> 6bone@6bone.informatik.uni-leipzig.de schrieb:
>> ich glaube ein graceful restart ist ein SIGUSR1 an den apache. Leider
>> klappt das bei mir auch nicht so richtig. Wenn man auf der server-status
>> seite nachsieht bekommt man fuer jeden prozess den aktuellen zustand.
>> nach dem SIGUSR1 verbleiben einige prozesse in "g" Graceful finishing.
>> Nach jedem SIGUSR1 kommen ein paar dazu usw. Aus diesem Grund bin ich
>> auf SIGHUP gegangen. Leider treten hier die schon beschriebenen probleme
>> auf.
>
>
> --------------------------------------------------------------------------
>                Apache HTTP Server Mailing List "users-de"
>      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
>           sonstige Anfragen an users-de-help@httpd.apache.org
> --------------------------------------------------------------------------
>

Re: stabiliaetsprobleme mit apache-2.2.6

Posted by ap...@spam.huckley.de.
Das einige Prozesse im Graceful finishing bleiben, ist beim gracful
gewünscht, das sind die Prozesse die gerade noch Requests bearbeiten,
die Prozesse sollten nach dem die Requests abgefrühstückt sind,
verschwinden.

Erzähl mahl mehr über den apachen, z.B. mit welchen Modulen Du Ihn
gebaut hast usw...

falk

6bone@6bone.informatik.uni-leipzig.de schrieb:
> ich glaube ein graceful restart ist ein SIGUSR1 an den apache. Leider
> klappt das bei mir auch nicht so richtig. Wenn man auf der server-status
> seite nachsieht bekommt man fuer jeden prozess den aktuellen zustand.
> nach dem SIGUSR1 verbleiben einige prozesse in "g" Graceful finishing.
> Nach jedem SIGUSR1 kommen ein paar dazu usw. Aus diesem Grund bin ich
> auf SIGHUP gegangen. Leider treten hier die schon beschriebenen probleme
> auf.


--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
           sonstige Anfragen an users-de-help@httpd.apache.org
--------------------------------------------------------------------------


Re: stabiliaetsprobleme mit apache-2.2.6

Posted by 6b...@6bone.informatik.uni-leipzig.de.
Hallo,

ich glaube ein graceful restart ist ein SIGUSR1 an den apache. Leider 
klappt das bei mir auch nicht so richtig. Wenn man auf der server-status 
seite nachsieht bekommt man fuer jeden prozess den aktuellen zustand. nach 
dem SIGUSR1 verbleiben einige prozesse in "g" Graceful finishing. Nach 
jedem SIGUSR1 kommen ein paar dazu usw. Aus diesem Grund bin ich auf 
SIGHUP gegangen. Leider treten hier die schon beschriebenen probleme auf.


Uwe


On Thu, 1 Nov 2007, Erik Abele wrote:
> Ich hatte kürzlich ein ähnliches Problem - bin zwar noch nicht 
> dahintergekommen was die exakte Ursache war, aber es hat geholfen einen 
> Graceful Restart anstatt eines normalen durchzuführen:
>
> - Logs rotieren (aus dem Weg verschieben/umbenennen)
> - USR1-Signal senden bzw. apachectl -k graceful - neue Logs werden geöffnet
> - erst beim nächsten Durchgang die vorher rotierten Logs z.B. komprimieren
>
> Hat auch den Vorteil, dass keine Client-Verbindungen unterbrochen werden etc.
>
> Siehxe auch http://httpd.apache.org/docs/2.2/stopping.html#graceful
>
> Cheers,
> Erik

Re: stabiliaetsprobleme mit apache-2.2.6

Posted by Erik Abele <er...@codefaktor.de>.
On 31.10.2007, at 19:31, 6bone@6bone.informatik.uni-leipzig.de wrote:

> Hallo,
>
> ich benutze den apache-2.2.6 mit folgender Konfiguration:
>
> Server Version: Apache/2.2.6 (Unix) mod_ssl/2.2.6 DAV/2  
> mod_auth_pgsql/2.0.3 PHP/5.2.4
>
> Betriebssystem netbsd (Multiprozessor)
>
> Der Apache selbt laeuft stabil. Probleme treten nur beim Logrotate  
> auf. Wird ein SIGHUP an den Apache kommt es in seltenen Faellen  
> vor, dass der Apache nach dem Erhalt des Signales nicht mehr  
> korrekt arbeitet. Teile der apache-config werden jetzt zusammen mit  
> den Webseiten ausgeliefert. Im errorlog findet man einen Eintrag  
> (siehe unten).

Ich hatte kürzlich ein ähnliches Problem - bin zwar noch nicht  
dahintergekommen was die exakte Ursache war, aber es hat geholfen  
einen Graceful Restart anstatt eines normalen durchzuführen:

- Logs rotieren (aus dem Weg verschieben/umbenennen)
- USR1-Signal senden bzw. apachectl -k graceful - neue Logs werden  
geöffnet
- erst beim nächsten Durchgang die vorher rotierten Logs z.B.  
komprimieren

Hat auch den Vorteil, dass keine Client-Verbindungen unterbrochen  
werden etc.

Siehe auch http://httpd.apache.org/docs/2.2/stopping.html#graceful

Cheers,
Erik


--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
           sonstige Anfragen an users-de-help@httpd.apache.org
--------------------------------------------------------------------------


Re: stabiliaetsprobleme mit apache-2.2.6

Posted by 6b...@6bone.informatik.uni-leipzig.de.
Hallo,

Bei einem manuellen Neustart treten keine Probleme auf. Wobei ein Neustart 
aber ein stop und start beinhaltet und nicht wirklich mit einem Signal zu 
vergleichen ist.

Meines Wissens erstellt das logrotate das logfile neu. Das sollte also 
kein Problem sein.

Uwe

On Thu, 1 Nov 2007, Paul Puschmann wrote:
> Per Cron einen erneuten Restart nach dem Logrotate durchf�hren?
>
> Tritt dieser Fehler auch nach einem manuellen Neustart auf oder nur
> mit Logrotate?
> Wei�t du wie das Logrotate arbeitet? Muss der Apache selbst das
> Logfile neu anlegen? Vielleicht hakt es ja hier?
>
> Paul
>

Re: stabiliaetsprobleme mit apache-2.2.6

Posted by Paul Puschmann <ln...@uzulabs.net>.
On Wed, Oct 31, 2007 at 07:31:17PM +0100, 6bone@6bone.informatik.uni-leipzig.de wrote:
> Hallo,
> 
> ich benutze den apache-2.2.6 mit folgender Konfiguration:
> 
> Server Version: Apache/2.2.6 (Unix) mod_ssl/2.2.6 DAV/2 
> mod_auth_pgsql/2.0.3 PHP/5.2.4
> 
> Betriebssystem netbsd (Multiprozessor)
> 
> Der Apache selbt laeuft stabil. Probleme treten nur beim Logrotate auf. 
> Wird ein SIGHUP an den Apache kommt es in seltenen Faellen vor, dass der 
> Apache nach dem Erhalt des Signales nicht mehr korrekt arbeitet. Teile der 
> apache-config werden jetzt zusammen mit den Webseiten ausgeliefert. Im 
> errorlog findet man einen Eintrag (siehe unten).
> 
> Das Verhalten ist recht suboptimal, da ich jetzt nach jedem logrotate 
> nachsehen muss ob der Apache noch richtig arbeitet.
> 
> Hat jemand eine Idee was man gegen das Verhalten tun kann?
> 
Per Cron einen erneuten Restart nach dem Logrotate durchführen?

Tritt dieser Fehler auch nach einem manuellen Neustart auf oder nur
mit Logrotate? 
Weißt du wie das Logrotate arbeitet? Muss der Apache selbst das
Logfile neu anlegen? Vielleicht hakt es ja hier?

Paul

> ##### Auszug aus dem error_log #####
> 
> [Wed Oct 31 12:00:12 2007] [notice] SIGHUP received.  Attempting to 
> restart
> [Wed Oct 31 12:00:24 2007] [notice] Digest: generating secret for digest 
> authentication ...
> [Wed Oct 31 12:00:24 2007] [notice] Digest: done
> [Wed Oct 31 12:00:24 2007] [notice] Apache/2.2.6 (Unix) mod_ssl/2.2.6 O} eq 
> "Snake Oil, Ltd." \\\n#            and %{SSL_CLIENT_S_DN_OU} in {"Staff", 
> "CA", "Dev"} \\\n#            and %{TIME_WDAY} >= 1 and %{TIME_WDAY} <= 5 
> \\\n#            and %{TIME_HOUR} >= 8 and %{TIME_HOUR} <= 20       ) \\\n# 
> or %{REMOTE_ADDR} =~ m/^192\\.76\\.162\\.[0-9]+$/\n#</Location>\n\n#   SSL 
> Engine Options:\n#   Set various options for the SSL engine.\n#   o 
> FakeBasicAuth:\n#     Translate the client X.509 into a Basic 
> Authorisation.  This means that\n#     the standard Auth/DBMAuth methods 
> can be used for access control.  The\n#     user name is the `one line' 
> version of the client's X.509 certificate.\n#     Note that no password is 
> obtained from the user. Every entry in the user\n#     file needs this 
> password: `xxj31ZMTZzkVA'.\n#   o ExportCertData:\n#     This exports two 
> additional environment variables: SSL_CLIENT_CERT and\n#     
> SSL_SERVER_CERT. These contain the PEM-encoded certificates of the\n#     
> server (always existing) and the client (only existing when client\n#     
> authentication is used). This can be used to import the certificates\n#     
> into CGI scripts.\n#   o StdEnvVars:\n#     This exports the standard 
> SSL/TLS related `SSL_*' environment variables.\n#     Per default this 
> exportation is switched off for performance reasons,\n#     because the 
> extraction step is an expensive operation and is usually\n#     useless for 
> serving static content. So one usually enables the\n#     exportation for 
> CGI and SSI requests only.\n#   o StrictRequire:\n#     This denies access 
> when "SSLRequireSSL" or "SSLRequire" applied even\n#     under a "Satisfy 
> any" situation, i.e. when it applies access is denied\n#     and no other 
> module can change it.\n#   o OptRenegotiate:\n#     This enables optimized 
> SSL connection renegotiation handling when SSL\n#     directives are used 
> in per-directory context. \n#SSLOptions +FakeBasicAuth +ExportCertData 
> +StrictRequire\n<FilesMatch "\\.(cgi|shtml|phtml|php)$">\n    SSLOptions 
> +StdEnvVars\n</FilesMatch>\n<Directory "/usr/pkg/libexec/cgi-bin">\n    
> SSLOption\x84\xc0\x06\bT\xc0\x06\bH\xc0\x06\b\xd03\x1a\b0\xe0\x1f\b\xe9 
> DAV/2 mod_auth_pgsql/2.0.3 PHP/5.2.4 configured -- resuming normal 
> operations


-- 
: Bitte einen Realname benutzen, unter dem Zitat antworten
: und einfache Text-Mails senden (kein HTML).
: Danke.