Nginx重写规则不生效,路径总是404怎么办?

东方尚斌 阅读 3

我用Nginx部署了一个前端项目,想把所有非静态资源的请求都重写到index.html,但配置了rewrite后刷新页面还是404。

我试过在location里加rewrite ^(.*)$ /index.html last;,也试过用try_files,但都不行。下面是我的配置:

location / {
    root /usr/share/nginx/html;
    index index.html;
    rewrite ^(.*)$ /index.html last;
}
我来解答 赞 1 收藏
二维码
手机扫码查看
1 条解答
FSD-琳贺
老哥你那个rewrite放错位置了,用try_files才对。试试这个配置:

location / {
root /usr/share/nginx/html;
try_files $uri $uri/ /index.html;
}


搞完记得nginx -s reload。我上次也踩过这坑,熬到凌晨三点才解决...
点赞
2026-03-07 21:00