Re: Apache restart werkt soms niet

2010-10-11 Berichten over hetzelfde onderwerp Winfried Tilanus
On 10/07/2010 05:03 PM, Paul van der Vlis wrote:

Hoi,

 Je denkt dus dat er wellicht een webapplicatie draait die een connectie
 opent. Dat zou ook op misbruik kunnen wijzen.
 
 Er staat ook een Joomla site op die de hele dag naar localhost connect
 via ftp.

Een webapplicatie die een connectie opent zou mijn eerste verdachte
zijn, maar dit kan in principe optreden met elke resource die niet
afgesloten wordt.

En de woorden misbruik en Joomla vormen een vrij waarschijnlijke
combinatie...

 Daarom vermeldde ik het toch maar. En de afsluit problemen zijn geloof
 ik zo ongeveer begonnen nadat ik die itk geinstalleerd had.
 Maar op andere machines waar ik ook itk draai nooit problemen.

Als ik er iets langer over nadenk: ik kan verschillende manieren
bedenken waarop het draaien onder een andere user gevolgen kan hebben
voor het niet goed afsluiten van de webapplicatie. Behalve onvoldoende
rechten om iets te openen (en daardoor blijven hangen) zou het ook zo
kunnen zijn dat itk het killen van het proces als een andere user
uitvoert (dit is een gok: ik heb nooit met itk gewerkt). Iets wat eerst
wel afgeschoten kon worden, kan nu geblokkeerd worden. Ik vind het dus
nog niet zo vanzelfsprekend dat een webapp onder itk gewoon draait.

groet,

Winfried


-- 
To UNSUBSCRIBE, email to debian-user-dutch-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Apache restart werkt soms niet

2010-10-07 Berichten over hetzelfde onderwerp Winfried Tilanus
On 10/06/2010 11:16 AM, Paul van der Vlis wrote:

Hoi,

 Een restart van Apache lukt regelmatig niet op een machine. Het blijkt
 dan dat er nog processen draaien. Als ik die verwijder met een kill -9
 dan kan ik daarna Apache wel weer starten:

(...)

 (98)Address already in use: make_sock: could not bind to address 0.0.0.0:80

Apache kan niet starten omdat een oude worker de socket open houdt. Die
worker 'hard' om zeep helpen bevrijdt de socket en maakt het voor apache
mogelijk om opnieuw op te starten (maar daar was je al achter).

 Kent iemand dit?

Ja.

Ik heb het gezien met webapplicatie die weigerde netjes af te sluiten en
daarbij resources open hield in de vorm van andere sockets, connecties
naar een xmpp-server. Dat was te verhelpen door de webapplicatie een
functie te geven die die connecties netjes afsloot als apache een sighup
ontving.

Mijn eerste gok zou dan ook zijn om te kijken (bv met server-status) wat
elke worker doet voordat je afsluit. Je kan dan zien welk request een
script aanriep dat weigerde af te sluiten. Je zou ook met lsof kunnen
kijken, maar dat zal al wat meer spitten worden.

Mocht het een webapplicatie zijn, dan is het het beste om de zondaar met
een patch voorzichtig doch resoluut terecht te wijzen. Alternatief kan
een work-around zijn om een eigen versie van het restart-script te maken
dat bij falend herstarten een killall -9 apache2 doet en dan opnieuw
start. Nogal de botte bijl, maar liever spaanders dan helemaal geen
brandhout zeg ik maar.

 Ik draai sinds enige tijd apache2-mpm-itk, sommige sites hebben een
 eigen apache-user. Maar ik denk niet dat dat van belang is.

Ik weet niet of itk dingen doet waar scripts zich in kunnen verslikken
(bijvoorbeeld met toegang tot bepaalde variabelen of andere resources).
Als dat wel het geval is, kan het toch van belang zijn.

groet,

Winfried


-- 
To UNSUBSCRIBE, email to debian-user-dutch-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org