Назад | Перейти на главную страницу

Как снять блокировку запросов на обратном прокси-сервере Apache после сбоя бэкэнда перед повторным запросом бэкэнда?

Я работаю над vhost обратного прокси apache2. Когда сервер за apache не работает, при первом запросе к apache, конечно же, отображается страница с ошибкой.

Но при последующих запросах кажется, что apache задерживается на некоторое время, прежде чем снова запросить внутренний сервер. В течение всего этого времени (которое короткое, но в разработке я вообще не хочу задержек) в браузере отображается только страница с ошибкой apache, хотя внутренний сервер уже запущен.

Где этот параметр в apache, каково это поведение и как установить нулевое время задержки?

Редактировать: Я не пытаюсь изменить тайм-аут для одного запроса. Я хочу изменить время блокировки. По моему опыту, apache блокирует дальнейшие запросы на определенное время, прежде чем снова запросить внутренний сервер, который однажды дал сбой.

Edit2: Вот что предоставляет apache:

Сервис временно недоступен

Сервер временно не может обработать ваш запрос из-за простоя в обслуживании или проблем с производительностью. Пожалуйста, попробуйте позже.


Apache/2.2.8 (Ubuntu) PHP/5.2.4-2ubuntu5.7 with Suhosin-Patch proxy_html/3.0.0 Server at localhost Port 80

После нажатия Ctrl-R в Firefox в течение 60 секунд страница наконец появляется.

Немного запоздалый ответ, но отправляю его для справки

http://httpd.apache.org/docs/2.2/mod/mod_proxy.html#proxypass

Ключевой настройкой является значение тайм-аута. По умолчанию 60 секунд, можно установить 0, чтобы всегда повторять попытку.

ProxyPass / путь http _ // server / retry = 0

В конфигурации RP, каково значение параметра конфигурации ProxyTimeout? Если он не установлен, происходит возврат к значению тайм-аута.

Вы не сможете иметь «нулевой» TO (даже если это незаметно, Apache пытается подключиться к бэкэнду, и это требует времени), но установка этого значения на 1 секунду может быть приемлемой.