You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Apache中配置.htaccess为/article子目录URL追加.html后缀

Apache /article路径统一追加.html后缀解决方案

第一步:确认基础配置生效

  • 开启Apache mod_rewrite模块:执行apache2ctl -M | grep rewrite(Debian/Ubuntu系统)或httpd -M | grep rewrite(CentOS/RHEL系统),如果没有输出rewrite_module (shared),执行a2enmod rewrite开启模块后重启Apache。
  • 确保站点配置中对应根目录的AllowOverride参数设置为All,设置为None时.htaccess文件不会生效,修改后需重启Apache。

第二步:修正重写规则

你原有规则存在两个问题:一是正则仅匹配/article/后以小写字母开头的路径,数字、特殊符号开头的路径会匹配失败;二是没有避免已带.html后缀的路径被重复追加,导致重写循环报错。
根据.htaccess存放位置选择对应规则:

情况1:.htaccess放在网站根目录

RewriteEngine On
# 排除真实存在的文件、目录,避免正常资源被重写
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# 匹配/article下所有路径,内部追加.html后缀
RewriteRule ^article/(.*)$ /article/$1.html [NC,L]

如果需要用户访问/article/xxx时自动跳转到/article/xxx.html(地址栏显示.html后缀),将最后一行标记修改为[NC,R=301,L]即可。

情况2:.htaccess放在/article子目录下

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ $1.html [NC,L]

验证方法

修改.htaccess后无需重启Apache,清空浏览器缓存后直接访问测试路径即可生效。

内容的提问来源于stack exchange,提问作者monkeytrick

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 22:57:03