Сервер Apache зависает через несколько часов, требуется перезагрузка
У меня есть VPS с 2 ГБ оперативной памяти на машине с Ubuntu 14. Через некоторое время я решил обновить свои пакеты на машине, включая установку последней версии apache2 (2.4.7).
Однако через несколько дней стали появляться проблемы с моей установкой WordPress (v 4.0). Когда я перезагружаю сервер apache, он прекрасно работает, обслуживая страницы. Затем, через несколько часов, любой запрос к серверу занимает 1-2 минуты для получения ответа. У меня мало трафика на веб-сервер, чтобы оправдать эту задержку. Отнюдь не. Это также происходит с HTML-страницами, а не только с PHP.
Когда я перезагружаю сервер apache, все в порядке, пока проблемы не начнутся снова, через несколько часов, когда сервер перестанет отвечать на запросы.
Вот мой файл /etc/apache2/mods-enabled/mpm_prefork.conf:
<IfModule mpm_prefork_module>
StartServers 10
MinSpareServers 10
MaxSpareServers 30
MaxRequestWorkers 100
MaxConnectionsPerChild 2000
</IfModule>
Я также пытался увеличить эти цифры (до того момента, когда процессы apache будут потреблять до 1,6 ГБ), но безрезультатно.
Я не знаю много вещей о конфигурации Apache, кто-нибудь может указать мне правильное направление, чтобы найти ошибку?
2 ответа
Оказывается, я стал жертвой атак xmlrpc на WordPress.
Я проверил журналы и увидел сотни запросов в моем файле xmlrtc.php wordpress от одного объекта. Я изменил свой файл.htaccess, чтобы он содержал одно дополнительное правило перезаписи:
RewriteRule ^ xmlrpc.php $ "http://0.0.0.0/" [R = 301, L]
И до сих пор у меня не возникло никаких проблем.
Посмотрите журнал ошибок в apache. Вы можете проверить, не нашли ли вы какую-либо несовместимость между вашей новой версией apache и старой версией PHP