我正在使用nginx设置一个服务器来托管我的网站,但我的后端工作遇到了麻烦。目前我只使用Restful API,并试图在nginx中使用JavaScript来访问我的后端,但我必须为每个API端点添加一个位置。例如,我的后端服务器在localhost:5000上从pm2运行,我所有的端点都需要http://myip/api/(my-endpoint),如果我将nginx设置为这样:
location / {
try_files $uri $uri/ =404;
}
location /api {
proxy_pass http://localhost:5000/api;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
字符串
它仍然不工作.什么是最好的方法去设置nginx处理所有请求从我的前端到后端?谢谢!
1条答案
按热度按时间vu8f3i0k1#
当你在代理URL的末尾没有使用斜杠
/
时,它会将/api
添加到后面的proxy_pass
中,这样你最终会得到http://localhost:5000/api/api
。尝试在根URL的末尾使用斜杠:
字符串