React的浏览器路由刷新404使用try_files $uri 解决了,又添加了反向代理,但动态请求却没有请求不到数据?

新手上路,请多包涵

1、问题描述:

技术栈使用React+reactRouter+Node,在在阿里云部署上线(使用了宝塔)的时候使用nginx添加反向代理
node监听的端口http://127.0.0.1:8881,node(使用express)静态配置目录为views,nginx网站根目录
配置为root /***/views,配置完成后,访问域名出现Cannot GET / 但是我在域名后加了
http://www.xxx.com/index.html就能访问正常。
但是不能刷新,不能再地址栏输入url,否则就会报Cannot GET 这是404,我找到了
解决方法:
 location /{
    try_files $uri $uri/ /index.html;
 }
 但是配置后 虽然不会出现Cannot GET 404,刷新也不会,这是React的浏览器路由所导致的,但是我配置了    
 之后所有的动态请求都不能请求到数据,但是请求状态为200,返回的是:

clipboard.png

  但我如果去掉了try_files $uri $uri/ /index.html;这句配置,那么就又会出现Cannot GET 404的
  问题依然在域名后加了http://www.xxx.com/index.html就能访问正常。找了好长时间的解决方案都不
  行,不知道到哪位仁兄有没有遇到过这种问题?或者是类似的问题?请教解决方法,小弟我不胜感激!
  以下是nginx配置文件:

clipboard.png

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