Админим с Буквой
5.52K subscribers
303 photos
8 videos
59 files
1.16K links
Канал о системном администрировании, DevOps и немного Инфобеза.

По всем вопросам обращаться к @bykva. Рекламу не размещаю.
Download Telegram
Apache, ты пьян, иди домой

Словил сегодня интересную особенность apache. Запустил докер с апачем внутри и начал тестить. Захожу в браузере на страничку, иногда возвращаюсь в терминал. В один прекрасный момент замечаю что апач завершил работу. Путем вдумчивых повторений процесса оказалось что... при изменении размера терминала апач завершает свою работу. ему посылается сигнал SIGWINCH, который апач воспринимает как gracefull shutdown.

более подробное разъяснение (лень переводить)

SIGWINCH

SIGWINCH means SIGNAL WINDOWS CHANGE and is sent automatically when a terminal detects a change in it's windows size to allow for a redraw.

SIGWINCH for apache2

But unfortunately apache2 process poorly misuses this signal (in the way they divert its first meaning), but for their defense, they seems not to have a choice and had to resort to this due to a lack of signal (see bug report). One of their assumption is that apache2 process is always in background.

т.е. из этого становится понятно - апач запущен в foreground с подключенной tty (docker run -t). Поэтому при изменении размера терминала получаем завершение работы.

источник

#apache #yakuake