【发布时间】:2025-12-03 10:35:01
【问题描述】:
我想proxy_pass根位置(/)到3000端口,/api位置到5000端口,是完全可以的,对吧?
我的 nginx 配置文件:
server {
listen 80;
server_name mywebsite.com;
location /api {
proxy_pass http://localhost:5000;
}
location / {
proxy_pass http://localhost:3000;
}
}
如果我在本地执行 api 请求,我可以获得预期的输出:
myuser@myserver [conf.d]# curl localhost:5000
Hello, World!myuser@myserver [conf.d]#
但是使用 api 客户端则不需要,并且从根路径到端口 3000 的 proxy_pass 在浏览器和 api 客户端中可以正常工作
注意事项:
- 我没有忘记用
sudo systemctl reload nginx重新加载nginx - 防火墙允许两个端口的流量,我使用
ufw - 服务器操作系统为
centos 7
【问题讨论】:
-
你也在发送 URI,所以你应该测试:
curl http://localhost:5000/api
标签: http nginx port backend reverse-proxy