Apache2配置中如何使用301重定向
作者:归人云淡风轻
时间:2026-06-28
来源:互联网
浏览:0
Apache2中301重定向可通过两种方式实现:一是修改.htaccess文件,添加RewriteRule规则;二是在虚拟主机配置中使用Redirect指令。两者均需启用配置并重启服务,注意备份和测试。.htaccess更灵活,虚拟主机配置性能更优。
在Apache2的日常运维中,301重定向是经常会用到的功能之一——不管是网站改版、域名迁移,还是想把旧链接永久指向新地址,都离不开它。简单来说,就是告诉搜索引擎和用户:“这个页面已经搬家了,请直接去新地址。”下面梳理两种最实用的实现方式,按照自己的习惯选一种就行。

方法一:通过 .htaccess 文件操作
- 找到或创建
.htaccess文件
如果网站根目录下没有这个文件,手动创建一个即可。它通常就放在站点根目录,负责控制目录级别的访问规则。 - 编辑文件并添加重定向规则
把下面这段代码加进去:
解析一下:RewriteEngine OnRewriteRule ^old-page.html$ /new-page.html [R=301,L]RewriteEngine On是开启重写引擎,相当于告诉Apache“我要用这个功能了”。RewriteRule ^old-page.html$ /new-page.html [R=301,L]的含义是:当用户访问old-page.html时,自动跳转到new-page.html,同时返回301状态码。后面的L表示这是最后一条规则,匹配后就不再处理后续规则了。
方法二:在虚拟主机配置文件中使用 Redirect 指令
- 定位虚拟主机配置文件
通常可以在/etc/apache2/sites-a vailable/目录下找到,文件名像your-site.conf这样的就是了。 - 编辑配置文件并添加重定向
在块内部插入以下内容:
这里ServerName yourdomain.comDocumentRoot /var/www/htmlRedirect 301 /old-page.html /new-page.html Redirect 301 /old-page.html /new-page.html非常直观——凡是请求/old-page.html的,都直接转到/new-page.html,并携带301状态。 - 启用配置并重启服务
先运行sudo a2ensite your-site.conf确保配置被激活,然后用sudo systemctl restart apache2重启Apache,让改动生效。
需要留意的几个点
- 备份永远是第一步:无论改哪个文件,先复制一份再动手,万一搞砸了能快速回退。
- 测试别省略:配置完成后,用浏览器直接访问旧链接,或者用
curl -I查看返回的HTTP状态码,确认确实是301而不是其他代码。 - 权限问题:如果用
.htaccess,要确保Apache有权限读取它,否则规则不会生效。
这两种方法都能搞定301重定向,具体选哪个取决于你的场景——.htaccess 更灵活、适合无权修改服务器全局配置的环境;虚拟主机配置则更干净、性能更好,适合掌握服务器完整控制权的情况。从实践来看,很多资深运维倾向于把这类全局性规则写在虚拟主机配置里,但说到底,用起来顺手才是关键。
作者最新文章
荣耀MagicOS 11发布计划与Agent Harness架构解析
2026-09-08 19:23
AI重构企业业务架构:超聚变“智企”范式核心解析
2026-09-08 18:39
PDF合并工具怎么选?在线合并5步实操指南
2026-09-04 17:05
PDF图片压缩工具推荐与批量处理实操指南
2026-09-03 12:14
照片如何转成PDF格式?三种图片转PDF操作方法
2026-09-03 11:04
热门文章
更多
精品专题
更多
Mac软件
更多
WINDOWS
更多
Windows 10
Windows
Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。
极度公式
Windows/macOS/Linux
极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。
















