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

Аутентификация nginx и настраиваемая страница ошибок

Я пытаюсь настроить свой сервер так, чтобы он требовал аутентификации перед просмотром любого файла в домене. Однако я хочу отображать настраиваемую страницу ошибок (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 директивы.