当前位置:首页 > PHP

php实现301重定向

2026-04-03 01:47:17PHP

PHP实现301重定向的方法

301重定向是一种永久性重定向,常用于网站URL结构调整或域名更换时保持SEO权重传递。以下是几种PHP实现301重定向的常见方式:

使用header()函数

通过PHP的header()函数发送HTTP状态码和Location头部实现重定向:

php实现301重定向

header("HTTP/1.1 301 Moved Permanently");
header("Location: https://newdomain.com/new-url");
exit();

直接设置状态码和Location

更简洁的写法,直接指定301状态码:

header("Location: https://newdomain.com/new-url", true, 301);
exit();

通过.htaccess文件实现

虽然不是纯PHP方案,但常与PHP项目配合使用:

php实现301重定向

Redirect 301 /old-page.php https://example.com/new-page.php

或使用mod_rewrite模块:

RewriteEngine On
RewriteRule ^old-url$ new-url [R=301,L]

WordPress中的实现

如果是WordPress站点,可在主题的functions.php中添加:

add_action('template_redirect', 'custom_301_redirect');
function custom_301_redirect() {
    if (is_page('old-page')) {
        wp_redirect('https://example.com/new-page', 301);
        exit();
    }
}

注意事项

  • 必须在输出任何内容前调用header()函数
  • 重定向后务必使用exit()die()终止脚本执行
  • 确保目标URL是完整绝对路径(包含http://或https://)
  • 避免重定向循环(A→B→A的情况)
  • 对于大量重定向,建议使用服务器配置(如.htaccess)而非PHP脚本

测试验证方法

  • 使用浏览器开发者工具查看网络请求,确认返回状态码为301
  • 通过在线HTTP头检查工具验证
  • 检查搜索引擎是否已更新索引(可能需要数周时间)

标签: 重定向php
分享给朋友:

相关文章

php实现分页

php实现分页

PHP实现分页的基本方法 使用原生PHP实现分页功能需要结合数据库查询和HTML展示。以下是核心实现步骤: 数据库查询与分页逻辑 // 连接数据库 $conn = new mysqli('loca…

php实现分页

php实现分页

PHP实现分页的基本方法 使用LIMIT和OFFSET进行数据库查询分页。通过计算当前页码和每页显示数量,动态生成SQL语句。 $page = isset($_GET['page']) ? (int…

php实现一个

php实现一个

PHP 实现一个简单的计算器 创建一个基本的计算器,支持加、减、乘、除运算。以下是一个完整的实现代码示例: <?php $result = ""; if ($_SERVER["REQUEST_…

php 实现单点登录

php 实现单点登录

PHP 实现单点登录的方法 单点登录(SSO)允许用户通过一次登录访问多个相互信任的系统。以下是基于 PHP 的实现方案: 基于共享 Session 的方案 在同一个主域名下的子域名间可以通过共享…

php 实现mvc

php 实现mvc

PHP 实现 MVC 架构的方法 MVC(Model-View-Controller)是一种常见的软件设计模式,用于分离业务逻辑、用户界面和用户输入。以下是 PHP 实现 MVC 架构的关键步骤:…

php实现支付宝支付

php实现支付宝支付

支付宝支付集成步骤 准备工作 在开始集成支付宝支付前,确保已注册支付宝开放平台账号并完成企业实名认证。创建应用后获取APPID、应用私钥和支付宝公钥。 配置支付宝SDK 通过Composer安装支付…