当前位置:首页 > PHP

php实现301重定向

2026-02-13 18:16:15PHP

PHP实现301重定向的方法

301重定向是永久性重定向,常用于网站URL结构调整或域名更换。以下是几种实现方式:

使用header函数

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

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

确保在调用header()前没有输出内容,否则会报错。exit()用于终止脚本继续执行。

通过.htaccess文件

对于Apache服务器,可在.htaccess中添加规则:

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

或使用mod_rewrite模块:

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

WordPress中的实现

在WordPress主题的functions.php中添加:

php实现301重定向

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();
    }
}

注意事项

  • 301重定向会影响SEO,搜索引擎会将旧URL的权重转移到新URL
  • 测试时建议先使用302临时重定向,确认无误后再改为301
  • 确保重定向目标URL是绝对路径(包含协议和域名)
  • 避免重定向循环(A→B→A的情况)

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

相关文章

php实现打印功能

php实现打印功能

PHP实现打印功能的方法 在PHP中实现打印功能可以通过多种方式完成,包括直接输出到浏览器、生成PDF文件、调用打印机接口等。以下是几种常见的方法: 直接输出HTML内容 PHP可以通过echo或p…

php实现分页

php实现分页

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

php实现文件下载

php实现文件下载

PHP实现文件下载的方法 通过PHP实现文件下载功能,可以采用多种方式,以下是几种常见的实现方法: 使用header()函数强制下载 设置HTTP头信息,强制浏览器下载文件而非直接打开: $fi…

php 实现单点登录

php 实现单点登录

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

php数组实现

php数组实现

PHP 数组的基本实现 PHP 数组是一种非常灵活的数据结构,可以存储多个值,并且支持多种类型的键(整数或字符串)。PHP 数组实际上是有序映射(ordered map),可以看作是列表(vector…

php实现伪静态

php实现伪静态

PHP 实现伪静态的方法 伪静态(URL Rewrite)是一种将动态URL转换为看似静态URL的技术,提升SEO友好性和用户体验。以下是几种常见的实现方式: 使用 Apache 的 mod_rew…