如何使用Nginx实现带.html后缀URL重定向为无后缀且末尾带斜杠格式
Nginx 静态.html URL去后缀加尾斜杠配置方案
- 首先打开对应站点的Nginx配置文件(通常存放在
/etc/nginx/sites-available/目录下对应站点的配置文件,或是主配置nginx.conf内的对应server块) - 在server块中添加以下重定向规则,实现
.html后缀的请求301永久重定向到去后缀加斜杠的格式:
# 匹配所有以.html结尾的正常请求 if ($request_uri ~ ^/(.*)\.html$) { return 301 /$1/; }
- 修改
location /块的try_files规则,保证重定向后的带斜杠路径可以正确匹配到对应的.html文件,避免返回404:
location / { # 保留原有其他配置,新增或调整try_files规则如下 try_files $uri $uri.html $uri/ =404; }
- 保存配置后,先执行命令
nginx -t测试配置语法是否正确,返回成功提示后执行nginx -s reload重载配置即可生效。
注意事项:如果站点存在其他重定向规则,建议将上述.html重定向规则放在其他规则之前,避免优先级冲突;测试时建议先清除浏览器缓存,避免旧的301永久重定向缓存导致结果不符合预期。
内容的提问来源于stack exchange,提问作者Dali
相关产品推荐
相关产品推荐

