web-dev-qa-db-ja.com

nginxのネストされた場所

こんにちは私は以下を機能させようとしています!

私は基本的に、次の2つのURLのいずれかによってproxy_passディレクティブに次のURLが渡されることを許可しようとしています。

http://example.com/admin/1 または http://example.com/admin/2/

私は次の設定を持っています:

location /admin/ {

        # Access shellinabox via proxy
        location 1/ {
                proxy_set_header Host $Host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_pass http://example.com;
        }

}

現時点では、エラーがスローされます。

2016/01/17 15:02:19 [emerg] 1#1: location "1/" is outside location "/admin/" in /etc/nginx/conf.d/XXX.conf:37
nginx: [emerg] location "1/" is outside location "/admin/" in /etc/nginx/conf.d/XXX.conf:37
8
geekscrap

内部URLは外部URLに相対的ではないため、内部ロケーションブロックで/admin/1/を使用する必要があります。これは、含めたエラーメッセージの次のスニペットに基づく問題であることがわかります...

location "1/" is outside location "/admin/"
18
Patrick Lee