Я пытаюсь настроить свой сервер так, чтобы он требовал аутентификации перед просмотром любого файла в домене. Однако я хочу отображать настраиваемую страницу ошибок (placeholder.html
), когда кто-то не может пройти аутентификацию.
Я попробовал конфигурацию сервера, указанную ниже, но она отправляет мой браузер в бесконечный цикл перенаправления (даже без отображения окна аутентификации). Кто-нибудь может это объяснить? Как бы вы это решили?
server {
listen 80;
server_name example.com;
root /var/www/example.com;
index index.html index.htm;
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/auth/example.com.auth;
error_page 401 placeholder.html;
location = placeholder.html {
auth_basic off;
}
location / {
try_files $uri $uri/ =404;
}
}
Вы должны добавить косую черту перед placeholder.html
в обоих location
и error_page
директивы.