Показать пользовательскую страницу 503, если выше позору
-
14-11-2019 - |
Вопрос
Я использую nginx в качестве интерфейса к серверу Apache.Файл конфигурации выглядит как:
upstream apache {
server localhost:8000;
}
server {
listen 80;
error_page 503 /www/static/503.html;
# need some magic here #
location /static/ {
root /www/static/;
}
location / {
proxy_path http://apache/;
}
}
.
На данный момент, когда Apache Down Down, я получаю простую 502 страницу, сгенерированную NGINX.Как сделать его подавать свою собственную страницу ошибки и вернуть код статуса 503, который более актуален в этой ситуации?
Решение
Something like this
upstream apache {
server localhost:8000;
}
server {
listen 80;
error_page 502 503 /www/static/503.html;
location /static/ {
root /www/static/;
}
location / {
proxy_path http://apache/;
}
}
You can append standard error codes together to display a single page for several types of errors.
For example:
error_page 502 503 /www/static/503.html;
For more reference you can refer the error_page manual
On the error_page manual it says
Furthermore, it is possible to change the code of answer to another, for example:
error_page 404 =200 /.empty.gif;
Another option
To make it return a different error code you can make use of a return
keyword
For example:
# check for a condition
if (condition) {
return 503;
}