设置nginx反向代理之后首页就出现了nginx那个Index.html页面为什么?

想写一个前后端分离的小demo,结果遇到了是无数个问题。
打算用nginx解决跨域请求的问题,即前端发送请求调用后端查询的接口。
想要达到的目的是nginx监听前端的8083端口,遇到/api的时候就代理到后端接口返回数据给前端页面

clipboard.png
nginx.conf文件

clipboard.png
访问项目首页

但是只对/api一种情况作了匹配规则,明明没有对location为/的情况做配置。为何前端页面输入localhost:8083一出来就是代理到nginx他自己的Index.html页面了呢?困惑啊

阅读 8.6k
2 个回答

location写的不对吧,这样写试试

root /data/wwwroot/项目名称; #(项目路径)
location /api {

    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $host;
    proxy_pass http://127.0.0.1:7001/api;

}

你只设了 /api,没有设置 /,所以 / 还是 Nginx 自己处理的。不过理论上来说应该是 404,我不清楚 Nginx 是自己指向了 index.html 还是因为你浏览器缓存的问题。

反正你配置了 / 应该就不会有这个东西了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题