我的Nginx安装并运行,下面是来自/etc/nginx/nginx.conf
的配置,我想将所有/api/*
转发到我的tomcat服务器,该服务器在端口9100上运行在同一台服务器上(类型{{1} ()工作),否则,在' / usr / share / nginx / html'下提供静态文件。现在我输入http://myhost:9100/api/apps
给404.问题是什么?
http://myhost/api/apps
答案 0 :(得分:5)
proxy_pass
语句可以可选地修改URI,然后再将其传递给上游。有关详细信息,请参阅this document。
以这种形式:
location ^~ /api/ {
proxy_pass http://myserver/;
}
URI /api/foo
传递给http://myserver/foo
。
删除/
声明中的尾随proxy_pass
:
location ^~ /api/ {
proxy_pass http://myserver;
}
URI /api/foo
现已传递给http://myserver/api/foo
。