Я хочу настроить сервер так, чтобы он отображал страницу обслуживания, когда она существует. Я попробовал этот код и работает:
location / {
try_files /maintenance.html $uri $uri/ @codeigniter;
}
Но я заметил, что ему будет предоставлен код состояния 200, и это может привести к путанице в поисковых системах. Я думаю, что лучшая практика будет возвращать код состояния 503. На Google я нахожу несколько соответствующих страниц об этом, как это . Тем не менее, они используют if для перенаправления и, согласно документации nginx, использование ifs небезопасно.
Есть ли способ сделать это без использования if? Безопасно ли использовать в этом случае?
Благодарю.
источник
if
s в этом случае, поскольку его не следует использовать в соответствии с документацией .In some cases it's also possible to move ifs to server level (where it's safe as only other rewrite module directives are allowed within it).
страница ошибки обслуживания, как показал Майк, обычно устанавливается в контексте сервера {}.