当前位置:首页 > 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实现验证码的方法 使用GD库生成验证码 GD库是PHP中处理图像的扩展,可用于生成验证码图片。 <?php session_start(); $width = 120; $height…

php实现增删改查

php实现增删改查

以下是在PHP中实现增删改查(CRUD)操作的详细方法,以MySQL数据库为例: 数据库连接配置 创建config.php文件存储数据库连接信息: <?php $host = 'localh…

php购物车实现

php购物车实现

PHP购物车实现方法 使用PHP实现购物车功能可以通过多种方式完成,以下是几种常见的实现方法: Session存储购物车数据 利用PHP的$_SESSION超全局变量存储购物车数据是最简单的方法。用…

php队列的实现

php队列的实现

PHP队列的实现方式 PHP中实现队列功能可以通过多种方式,根据需求选择适合的方案: 使用数组实现基础队列 PHP数组本身支持队列操作,利用array_push和array_shift函数: $q…

php实现一个

php实现一个

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

php实现的进度条

php实现的进度条

PHP 实现的进度条方法 在 PHP 中实现进度条通常可以通过命令行脚本(CLI)或 Web 页面两种方式完成。以下是几种常见的实现方法: 命令行进度条 使用 PHP CLI 实现进度条,可以通过不…