301重定向(HTTP Status Code 301 Moved Permanently)是HTTP协议中定义的永久性重定向状态码。当用户或搜索引擎访问一个旧URL时,服务器返回301状态码,并在Location响应头中指定新地址,客户端自动跳转至新URL。
该机制的核心价值在于:
- SEO权重传递:搜索引擎将旧页面约90–99%的PageRank、外链权重与索引信号转移至新页面
- 用户体验保障:避免404错误,确保收藏链接、外部引用持续有效
- URL规范化:统一域名(如www与非www)、协议(HTTP→HTTPS)、路径结构,防止内容重复
✅ 关键区别:与302(临时重定向)不同,301明确告知搜索引擎“此变更不可逆”,是唯一被推荐用于永久迁移的方案。
核心应用场景
表格
| 场景 | 说明 | 必须使用301? |
| 域名更换 | 如 old.com → new.com |
✅ 是 |
| HTTPS迁移 | http:// → https:// 全站强制跳转 |
✅ 是 |
| URL结构调整 | /blog/post-1 → /articles/post-1 |
✅ 是 |
| 页面合并 | 将多个相似内容页合并为一个新页 | ✅ 是 |
| 修复拼写/大小写错误 | /ProDuct → /product |
✅ 是 |
| 多域名统一 | company.net, company.org → 主域名 |
✅ 是 |
📌 百度与Google共识:两者均明确建议使用301处理永久性变更,302仅适用于临时活动或测试。
主流实现方式
1. Nginx 服务器(推荐)
使用 return 301 直接响应,性能最优,无正则开销:
nginxCopy Code
server { listen 80; server_name old-domain.com; return 301 https://m.danji200.com/app/3552.html$request_uri; }
- 关键参数:
$request_uri保留原始路径与查询参数,避免信息丢失 - 最佳实践:禁用
rewrite,避免触发额外引擎,提升高并发性能
2. Apache 服务器(.htaccess)
使用 mod_alias 的 Redirect 指令,语义清晰:
apacheCopy Code
Redirect 301 /old-page.html https://m.danji200.com/new-page.html
整站重定向(保留路径):
apacheCopy Code
RewriteEngine On RewriteCond %{HTTP_HOST} ^old-domain\.com$ [NC] RewriteRule ^(.*)$ https://www.danji200.com/$1 [R=301,L]
⚠️ 避坑提示:避免混用
mod_rewrite与mod_alias,易引发循环重定向
3. WordPress 插件方案
推荐使用 Redirection 插件(免费、可视化):
- 安装并激活插件
- 进入 工具 → Redirection
- 添加规则:
- Source URL:
/old-post - Target URL:
https://www.danji200.com/ new-post - Status Code:选择
301 Permanent
- 启用日志监控,实时追踪跳转命中率
✅ 适合非技术人员,支持批量导入/导出、404监控、重定向历史追溯。
SEO最佳实践(2026年生产级标准)
表格
| 原则 | 说明 | 风险提示 |
| 重定向链 ≤ 3跳 | A→B→C→D 会损失约15%权重 | 链式重定向导致权重稀释、加载延迟 |
| 保留原始参数 | 使用 $request_uri 或 %{QUERY_STRING} |
忽略参数导致搜索结果页失效 |
| 目标页必须200 | 重定向终点不能是404或500 | 百度蜘蛛超 |