首先这个是前端项目页面的配置,没啥问题,
location / { root /home/party_game/dist; # 访问根目录 index index.html index.htm; # 入口文件 try_files $uri $uri/ /index.html; }
然后正常情况转发后端请求应在再写一个 location 拦截,也就是这样
location /api { proxy_pass http://localhost:60101; }
看着也没啥问题是吧?但是震惊我的是,我在前端项目和后端项目里配置的请求地址前缀都是 pgApi (例: http://localhost:60101/pgApi/auth/login ),如此我又尝试了把请求拦截换成了
location /abc { proxy_pass http://localhost:60101; } 或者 location /xxxx { proxy_pass http://localhost:60101; }
但是 nginx 都能把前端请求正常的转发到后端服务上,这个是为什么呀? 有点无法理解这部分原理,网上也没有搜到比较符合我问题的答案,特来请教
1 chenliangngng 30 天前 全配置发下? |
2 spencerseth44 30 天前 是不是没走下面这个 location ,下面这个带 proxy_pass 的 location 删掉看看正不正常?看看 nginx 的日志里面请求的 path 是什么 |
![]() | 3 wangxin3 30 天前 改完重新加载 nginx 配置没,nginx -s reload |
4 manami 30 天前 配置没生效,楼上说的 reload 试下 |
5 liudewa 30 天前 日志 里 能看到 转发后的 路径 |