Как отправить переменную с auth_request в nginx?

Я пытаюсь отправить переменную через директиву auth_request, чтобы затем использовать переменную для фактической авторизации. Я пытаюсь сделать это с помощью запроса GET, но если другие методы работают, это нормально. Это также будет работать, если есть способ сослаться на auth_request. Я пытаюсь создать одно местоположение, которое может проверять каждое приложение, а не другое местоположение для каждого приложения.

    auth_request /auth?app=myapp;
...
    location /auth {
         internal;
    
         proxy_pass http://127.0.0.1:8000/portal/auth?PASS_GET_VARIABLE;
    }
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
0
0
52
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Оказывается, переменная app=myapp уже передается. Это можно сделать с помощью rewrite и изменения proxy_pass URI.

auth_request /auth?app=myapp;

location /auth {
    internal;

    rewrite ^/auth(.*) /portal/auth$1;    

    proxy_pass http://127.0.0.1:8000;
}

Если URI не указан, в качестве URI передается совпадение местоположения. Таким образом, в этом примере /auth?app=myapp будет заменено на /portal/auth?app=myapp, и оно будет передано дальше.

Другие вопросы по теме