Nginx配置单页应用(vue, react等)路由404问题
在Nginx中,由于单页面应用的URL地址都是通过路由来实现的,所有的文件在一个index.html文件中,所以,当通过URL后面带着 /xx nginx就会找不到文件,从而显示404错误。解决方案:在 /etc/nginx/conf.d 文件夹下中 的 default.conf 文件中配置如下:location / {try_files $uri ...
·
在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文件。
更多推荐
已为社区贡献5条内容
所有评论(0)