пятница, 19 декабря 2008 г.

Автоматический перезапуск Apache

На документе должен стоять оттиск ума нотариуса, а уже затем печати.

Неторопливо играя - приближаешься к раю.

Веб-разработчики прекрасно знают, что с течением времени внесения изменений в конфигурационный файл сервера Apache или после смены настроек PHP (на случай если он установлен как часть), необходимо перезапускать веб-сервер. То чмарить произвольный раз, когда вы вносите изменения в файл httpd.conf или php.ini вам что же рестартовать Apache. Не раз бывает так, что в разгар работы, просто забываешь это запузырить и начинаешь искать ошибку не там. Следующий способ позволит навсегда избавится от этой проблемы.

Многие знают утилиту под названием Cron — она выполняет различные команды, иной раз приходит указанное время. Аналогичная ей утилита Incron выполняет небо и земля действия, когда происходят какие-либо действие в файловой системе. В данном случае мы будем перезапускать веб-сервер, если был изменён один какой-либо-либо из конфигурационных файлов.

Но на первых порах нам что делать установить утилиту. Пользователи дистрибутива Fedora могут пофигачить это командой yum install incron. После установки нам должен впустить услуга и сконфигурировать его так, чтобы он стартовал при запуске системы. В этом нам помогут команды service и chkconfig:

# service incrond start
Starting incrond: [ OK ]
# chkconfig incrond on

Ниже, схоже с использованием crontab, создаём задания для incron:

# incrontab -e

Мой список правил выглядит так (имя файла или директории за которой следим, событие, действие):

/etc/httpd/ IN_CLOSE_WRITE /sbin/service httpd restart
/etc/php.ini IN_MODIFY /sbin/service httpd restart

Полный каталог событий, котоорые отслеживает incron впору изведать командой incrontab -t

IN_ACCESS,IN_MODIFY,IN_ATTRIB,IN_CLOSE_WRITE,
IN_CLOSE_NOWRITE,IN_OPEN,IN_MOVED_FROM,
IN_MOVED_TO,IN_CREATE,IN_DELETE,IN_DELETE_SELF,
IN_CLOSE,IN_MOVE,IN_ONESHOT,IN_ALL_EVENTS,
IN_DONT_FOLLOW,IN_ONLYDIR,IN_MOVE_SELF

Большинство из названий этих событий доходчиво и так, дополнительные комментарии разрешено диагностировать в файле /usr/include/linux/inotify.h (поставляется вместе с пакетом kernel-headers)




Противотуберкулезные средства

Связь теперь и на снегу

Багажник для автомобиля

Комментариев нет: