Сегодня перестал работать наш апач, он не рухнул, а перестал отвечать.

Единственная ошибка, которую я вижу в error_log, это:

[Thu Feb 11 10:00:05.245233 2016] [core:error] [pid 7496] [client 169.229.3.91:54481] 
AH00126: Invalid URI in request 2p[\x96(\xc0\xf6\xb6w\x89\xf2=\xcd\x8f\xa4i\x9c\xb6\xec<n\v\x11!W\xdc\x9f\x1c\xdd8?\xb4\xe0\xb6,eW\xf0K\xa0H\xd1-\x91\x9f

accesslog содержит то же самое

linux-9jgs:/home/USER # cat /var/log/apache2/access_log |grep 169.229.3.91
169.229.3.91 - - [11/Feb/2016:10:00:05 +0100] "2p[\x96(\xc0\xf6\xb6w\x89\xf2=\xcd\x8f\xa4i\x9c\xb6\xec<n\v\x11!W\xdc\x9f\x1c\xdd8?\xb4\xe0\xb6,eW\xf0K\xa0H\xd1-\x91\x9f" 307 264 "-" "-"
linux-9jgs:/home/USER #

Любая идея, как мы можем предотвратить Apache от зависания в следующий раз?

Мы используем эту версию:

Server version: Apache/2.4.10 (Linux/SUSE)
Server built:   2015-08-11 15:51:30.000000000 +0000
Server's Module Magic Number: 20120211:36
Server loaded:  APR 1.5.1, APR-UTIL 1.5.3
Compiled using: APR 1.5.1, APR-UTIL 1.5.3
Architecture:   64-bit
Server MPM:     prefork
  threaded:     no
    forked:     yes (variable process count)

1 ответ1

1

Я бы посчитал

  • Обновление до последней версии веб-сервера Apache (2.4.18 на момент написания)
  • Просмотр настроек безопасности
  • Использование таких модулей, как mod_security

Посмотрите, как защитить ваш Apache с помощью mod_security


Еще одно действие, которое стоит попробовать - изменить MPM с prefork на рабочий в надежде, что он окажется менее уязвимым для этой проблемы.

См. Как выбрать Apache MPM для использования? и понимание Apache 2 MPM (рабочий против prefork)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .