Intereting Posts
Невозможно отклонить комментарий WordPress Как получить ярлык поля заказа Woocommerce в электронных письмах? Как я могу переписать старые URL-адреса вложений? Как вызвать функцию, которая создает таблицу в базе данных (функциональность плагина) Как полностью сохранить мои данные WordPress? Тема не отображается после загрузки Меню дрезины – отделители между детьми? Проблема с настройкой настраивателя с $ id, содержащим «виджет» Тема WordPress ajax has_posts () Можно добавить аватар аватара автора, чтобы он отображался для всех, а не только зарегистрированных / зарегистрированных пользователей? Штрих-коды не работают в собственном шаблоне Что такое comment_karma? перестраивать / переписывать URL-адрес, чтобы сделать его удобным для SEO Хороший способ включить фрагменты кода в сообщения, страницы и файлы шаблонов Event Manager? Домашняя страница не загружается, все остальные страницы загружаются

Я хочу написать что-то, что перезапускает службу httpd, когда мой Apache-сервер умирает

Я – неохотный «системный администратор» блога кулинарной рекламы среднего размера, который работает на экземпляре t2.small EC2 и использует WordPress в стеке LAMP. Несмотря на то, что он довольно неловко «сисадмин», он действительно работает очень надежно и эффективно, несмотря на то, что он отправляет много трафика. Я делал все, что мог, но время от времени (примерно раз в год) кому-то удается забить его атакой типа DDOS. Что происходит, так это то, что сервер Apache умирает, и кто-либо запрашивает что-либо с веб-сайта, получает таймаут HTTP. Перезапуск службы httpd немедленно устраняет проблему.

То, что я собираюсь сделать, – это планировать задание CRON для вызова веб-сайта каждые 5 минут, и если он обнаружит, что он получает тайм-аут более двух раз, он перезапускает службу httpd и отправляет мне электронное письмо. Теперь это НЕ один из тех, «я не могу настроить свой Apache-сервер должным образом, чтобы я перезапускал его каждый час». Apache настроен и отлично работает, когда он не взломан. И я поместил как можно больше брандмауэра в защиту от взлома. Мое рассуждение в основном «хакеры и сумасшедшие всегда находят новые способы забить меня, а когда они это сделают, я предпочел бы 10 минут отключения и электронную почту, чем потенциально часы простоя (если я сплю или прочь)». Вопрос в том, является ли это хорошим решением или есть лучший, более системный способ сделать это, используя некоторые существующие технологии?

Solutions Collecting From Web of "Я хочу написать что-то, что перезапускает службу httpd, когда мой Apache-сервер умирает"

Вам нужно что-то вроде этого:

#!/bin/bash #test-httpd.sh client="yourname" mailboxes="email@address.com" # write to that file monitorfile="/var/www/html/monitor.php" #empty monitor.php > $monitorfile APACHE=`/bin/pidof httpd` echo $APACHE if [ "$APACHE" == "" ] then echo APACHE_FAILURE | mail -s "$client"": CRITICAL : APACHE FAILURE !!!!" $mailboxes #trying to restart it /etc/init.d/httpd stop /etc/init.d/httpd start echo -e "apache:FAIL\n" >> $monitorfile else echo -e "apache:OK\n" >> $monitorfile fi 

Наконец, вам нужно задание cron, которое будет выполнять этот скрипт test-httpd.sh каждую минуту.

Это может быть в вашем кронтабе

 #check httpd * * * * * root /opt/misc/test-httpd.sh > /dev/null 2>&1