私はNginxの初心者です。私の要件は次のとおりです。
サービスの前に Nginx をフロント エンド サービスとしてセットアップします。これはリバース プロキシ サーバーのようなものですが、着信する顧客ヘッダーに基づいて着信 http リクエストを処理する必要があります。次のようにリバース プロキシを設定できることはわかっています。
server {
listen 18080;
server_name localhost;
location /myService {
proxy_pass http://host:port/myservice/;
}
}
また、$http_my_header を使用して受信リクエストから受信「my-header」を取得することも知っています。必要なのは、リクエストから「my-header」を取得し、「http://authserver:authport/authorize」などの別のリモート Web サービスを呼び出すことです。リクエストヘッダーに「my-header」を使用すると、authserver は「my-header」を承認し、次のような JSON ベースの応答を返します。
{
valid: "true"/"false";
}
次に、応答の「有効な」値に基づいて、nginx の背後にある myservice に要求を proxy_pass するか、403 http 応答で直接拒否するかを決定する必要があります。