最后修改时间:2026年5月20日
Apache 的 .htaccess 文件可以在目录级别配置重定向。它常用于共享主机、旧页面迁移、整站换域名和 URL 规范化。
如果你能修改 Apache 主配置文件,优先在 httpd.conf 或虚拟主机配置中写重定向;如果无法访问主配置,再使用 .htaccess。
把下面的规则添加到旧页面所在目录的 .htaccess 文件中。如果文件不存在,可以新建一个纯文本文件并命名为 .htaccess。
将 /old-page.html 永久重定向到新的页面地址。
.htaccess:
Redirect 301 /old-page.html https://www.example.com/new-page.html
把旧站所有路径重定向到新域名。规则应放在旧网站根目录的 .htaccess 文件中。
.htaccess:
Redirect 301 / https://www.newdomain.com/
如果上传了 .htaccess 但规则没有生效,通常是 Apache 主配置没有允许目录覆盖。需要在对应目录中启用 AllowOverride。
httpd.conf:
<Directory /srv/www/example.com/public_html/>
AllowOverride All
</Directory>
注意:频繁读取 .htaccess 会带来额外开销。可管理服务器时,把规则写进主配置通常更清晰、性能也更好。
如果你有权限修改 httpd.conf 或虚拟主机配置,可以直接添加 Redirect 指令。修改完成后需要重启或重新加载 Apache。
httpd.conf:
<Directory /srv/www/example.com/public_html/>
Redirect 301 /old-page.html https://www.example.com/new-page.html
</Directory>
检查模块和重启服务:
$ apache2ctl -M
$ sudo systemctl reload apache2
.htaccess 适合共享主机或无法修改主配置的站点;httpd.conf 由服务器主配置统一加载,性能更好,也更适合可控服务器环境。
通常放在旧页面所在目录或网站根目录。规则的作用范围从该目录向下生效,整站迁移一般放在旧站根目录。