nginx 中的嵌套位置
Nested locations in nginx
您好,我正在努力让以下内容发挥作用!
我基本上是在尝试通过这两个 URL 中的任何一个将以下 URL 传递给 proxy_pass 指令:
http://example.com/admin/1 or 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
您应该在内部位置块中使用 /admin/1/
,因为内部 URL 与外部 URL 无关。根据您包含的错误消息中的以下片段,您可以看到这是问题所在...
location "1/" is outside location "/admin/"
您好,我正在努力让以下内容发挥作用!
我基本上是在尝试通过这两个 URL 中的任何一个将以下 URL 传递给 proxy_pass 指令:
http://example.com/admin/1 or 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
您应该在内部位置块中使用 /admin/1/
,因为内部 URL 与外部 URL 无关。根据您包含的错误消息中的以下片段,您可以看到这是问题所在...
location "1/" is outside location "/admin/"