nginx пассажирский автономный предотвратить proxy_pass в подкаталоге

Я использую nginx в качестве обратного прокси-сервера для автономного сервера. Мне нужно настроить рут / расположение на отдельном пассажирском порту (5000), но немногие другие подкаталоги должны обслуживаться "чистым" nginx. Я пытаюсь конфигурации как

server {
    listen 443;

    root /path/to/rails/public;

    server_name example.com;

    ssl on;
    # ... some ssl config

    # this is used for passenger standalone on port 5000
    location / {
            proxy_pass https://127.0.0.1:5000;
            proxy_http_version 1.1;
            proxy_set_header Host $http_host;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection $connection_upgrade;
            proxy_buffering off;
    }

    # this is not passenger standalone! 
    location /subdir {
            proxy_pass https://127.0.0.1;
            auth_basic "Restricted access area authorization needed.";
            auth_basic_user_file /path/to/.htpasswd;
    }

}

но https://example.com/subdir/ возвращает всегда ошибку 404. Любые советы, чтобы это исправить?

1 ответ

Переместить директиву местоположения для /subdir выше направления корневого местоположения. Пути запроса совпадают в порядке, определенном в конфигурации.

server {
    listen 443;

    root /path/to/rails/public;

    server_name example.com;

    ssl on;
    # ... some ssl config

    # this is not passenger standalone! 
    location /subdir {
            proxy_pass https://127.0.0.1;
            auth_basic "Restricted access area authorization needed.";
            auth_basic_user_file /path/to/.htpasswd;
    }
    # this is used for passenger standalone on port 5000
    location / {
            proxy_pass https://127.0.0.1:5000;
            proxy_http_version 1.1;
            proxy_set_header Host $http_host;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection $connection_upgrade;
            proxy_buffering off;
    }
}
Другие вопросы по тегам