我有这个配置
server {
listen 8080;
access_log /var/log/nginx/access.log;
root /usr/share/nginx/htdocs;
index index.html index.htm;
port_in_redirect off;
location /somepath/ {
proxy_pass http://someinternalserver/somepath/;
}
location /health {
return 200;
}
}
当我像这样访问它时,http://我们的外部-fqdn/somepath/有用。
但是,当我像这样访问它时,http://我们的外部-fqdn/somepath/#我被重定向到我们的本地开发设置,即http://本地主机:8000
我错过了什么?
答案1
您指定的是确切的 URL,而不是正则表达式。试试这个
location ~* /somepath/ {
proxy_pass http://someinternalserver/somepath/;
}
如果不起作用,请 curl(使用 show headers,选项是 -DI think)URL 查看发生了什么,或者使用带有“Live HTTP Headers”的 Firefox。将该请求的输出与您的访问日志一起发布。