Nginx配置单页应用(vue, react等)路由404问题

在Nginx中,由于单页面应用的URL地址都是通过路由来实现的,所有的文件在一个index.html文件中,所以,当通过URL后面带着 /xx  nginx就会找不到文件,从而显示404错误。

解决方案:

 /etc/nginx/conf.d  文件夹下中 的  default.conf  文件中配置如下:

    location / {
        try_files $uri $uri/ /index.html;  //关键配置
        root   /root/web;     #服务默认启动目录
        index  index.html index.htm;    #默认访问文件
    }

在代码中使用了  try_files

try_files指令
语法:try_files file ... uri 或 try_files file ... = code
默认值:无
作用域:server location

其作用是按顺序检查文件是否存在,返回第一个找到的文件或文件夹(结尾加斜线表示为文件夹),如果所有的文件或文件夹都找不到,会进行一个内部重定向到最后一个参数。

这就很明确了,我们的这种写法try_files $uri $uri/ /index.html;就会导致所有找不到的url都会跳转到index.html文件。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值