Ошибка Weird Varnish 503 - что это значит?
Приложение для онлайн-доски уже работает, но по какой-то причине оно больше не работает. Теперь он показывает ошибку кэша 503 Varnish, как показано здесь: http://grab.by/eFHG
Вы случайно не знаете, где я должен попытаться решить эту проблему?
Спасибо!
Донни
Ответы
Ответ 1
Эта ошибка означает, что у Varnish не было ответа (даже не HTTP-ошибка) из бэкэнд в пределах тайм-аута.
Вы можете устранить эту проблему разными способами:
-
На сервере: вы видите запросы от Varnish на своем веб-сервере
log?
-
На сервере Varnish: запустите varnishlog и проверьте процесс запроса. В этом порядке должны быть события: RxRequest > TxRequest > RxResponse > TxResponse. Ваша проблема заключается в TxRequest (запрос отправлен на бэкэнд) и RxResponse (ответ получен от бэкэнд).
-
На сервере вашего лака попробуйте подключиться к серверу с помощью telnet (telnet). Соединяет ли он? Если да, попробуйте отправить запрос (например, "GET/" ). Получаете ли вы ответ?
Возможными причинами могут быть: блокировка брандмауэра /selinux между лаком и файловым сервером, плохим лаком или конфигурацией веб-сервера бэкэнд (являются бэкэнд-адресом и синхронизацией портов?), веб-сервер остановлен,...
Ответ 2
Вы всегда можете проверить свой /etc/varnish/default.vcl
(CentOS).
backend default {
.host = "127.0.0.1";
.port = "80";
}
Убедитесь, что значение .host
является IP-адресом вашего сервера и измените порт на 8080
, и настройте настройку порта в /etc/httpd/conf/httpd.conf
и убедитесь, что Apache прослушивает 8080
.
ИЗМЕНИТЬ
Это также может означать, что веб-сервер (Apache) имеет неправильные/стандартные настройки.
- Проверьте порты виртуального хоста, значения могут быть
80
, они должны быть
8080
.
- Проверить директивы Listen и имя_сервера, они должны иметь
8080
порт.
- Убедитесь, что вы выполняете
sudo systemctl enable varnish
.
- И для последнего касания сделайте
sudo reboot
(программы кэширования меня в состоянии разработки).