Apache2 & CGI-problem under Linux

Permalänk

Apache2 & CGI-problem under Linux

Jag har under en längre tid haft problem med Apache2 och CGI på en server som kör Gentoo. Jag har förgäves letat letat efter svar både på Gentoos mailinglist och på google. Nu tänkte jag om någon av er vet vad som är fel eller vart jag ska söka hjälp. Problemet är det att visa tider på dygnet, eller vissa dagar så kommer det ett "Error 500 Internal Server Error" meddelande, det är bara under vissa perioder det kommer, och under dessa perioder kommer det ungefär var 10:e gång man laddar ett cgi-script. Detta är felmeddelandet klienten får:

Citat:

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, <min mail> and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

och detta står i errorlogen:

Citat:

[Wed Aug 11 00:33:00 2004] [error] [client <mitt ip>] (11)Resource temporarily unavailable: couldn't create child process: 11: wiki.pl, referer: http://wiki.blinkenlights.se//Skapa_nya_sidor
[Wed Aug 11 00:33:00 2004] [error] [client <mitt ip>] (11)Resource temporarily unavailable: couldn't spawn child process: /var/www/cgi-bin/wiki.pl, referer: http://wiki.blinkenlights.se//Skapa_nya_sidor

Jag kör apache Apache 2.0.49 på Gentoo Linux. Jag har kollat så det inte är slut på minne och även tillåtit Apache göra oändligt med anslutningar och diverse andra saker med något program för att ställa in "limits", kommer inte ihåg vad det hette dock. Felet kommer på flera olika cgi-script så det är inte scriptet det är fel på heller.

Permalänk
Medlem

testat mod_perl ?

Visa signatur

~ When there's no more room in hell, the dead will walk the earth. ~

Permalänk
Citat:

Ursprungligen inskrivet av Shark^
testat mod_perl ?

Hur menar du nu? Vad ska jag med det till, ska jag ersätta CGI med mod_perl?
EDIT: Kollade på deras sida och såg att man visst kunde använda mod_perl för att köra CGI-script, kanske är värt att testa. Men det skulle vara trevligt att bli av med det här problemet ändå.

Permalänk
Medlem

...kunde använda mod_perl för att köra CGI-script...

Nej, för att köra perl-script! CGI är en standard för hur binärer ska köras och kommunisera med tex. en HTTP-server. Perl är ett av flera språk som går att köra över CGI, så även php, c, c++, java mfl.

Kör du perl över cgi kör du perl + ditt script, med php så php + ditt script, c .. bara ditt c program.. osv..

Att köra perl över cgi är mycket långsamt.. MYCKET... en sekund eller mer är "normalt" hur enkla scripten än är.. med mod_perl blir perl nått av det snabbaste man kan köra.

Visa signatur

~ When there's no more room in hell, the dead will walk the earth. ~

Permalänk

mod_perl löste inte problemet heller. Någon som vet vilket program det är jag tänker på som kan begränsa hur många processer apache har och hur mycket minne det använder osv?
"Resource temporarily unavailable: couldn't create child process:" borde väl bero på slut på minne eller att apache inte får spawna fler processer?

Permalänk
Medlem
Visa signatur

~ When there's no more room in hell, the dead will walk the earth. ~

Permalänk
Medlem

testa starta om apache. om det sen löser sig tillfälligt så har du nåt som apache kör som läcker minne. du kan konfa apache att starta om sina trådar var n-te request vilket är ett fult men troligen fungerande sätt att dölja problemet.

Visa signatur

4 datorer: 9 cpuer (plats för 4 till), 10scsi+1satadisk, 7.75gb ram, bara Linux
http://isitfika.net http://code.kryo.se

Permalänk

Är det stor chans att minnesläckan försvinner om jag byter till Apache 2.0.50? Står det i changelogen isf? (om det nu är en minnesläcka)
Tittade lite på mina loggfiler och upptäckte att access_log var ca 110MB, satte upp cronjobs för att rotera logar osv nu. Kan det ha varit det som var problemet?