php中页面301跳转我们使用header()函数发送状态代码301的同时再跳转到指定页面了,实现的方法非常的简单.
注意:
301,302 都是HTTP状态的编码,都代表着某个URL发生了转移,不同之处在于:
301 redirect:301 代表永久性转移(Permanently Moved),302 redirect:302 代表暂时性转移,Temporarily Moved.
例子,在php中正常的临时跳转通常使用,代码如下:
<?php header("Location:your_dest_url");?>
最简单的做法,代码如下:
$the_host = $_SERVER['HTTP_HOST'];//取得当前域名 if($the_host != 'noniu.com')//判断获取的这个域名是不是你想要的(即定向后的域名) { header("HTTP/1.1 301 Moved Permanently");//发出301头部 header("Location:phprm.com) //跳转到你希望的域名 exit(); }
这个还可以实现比如phprm.com 跳转到www.phprm.com 上,也就是让所有的页面都用带www的网址,代码如下:
<?php $the_host = $_SERVER['HTTP_HOST'];//取得当前域名 $the_url = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : '';//判断地址后面部分 $the_url = strtolower($the_url);//将英文字母转成小写 if($the_url=="/index.php")//判断是不是首页 { $the_url="";//如果是首页,赋值为空 } if($the_host !== 'www.phprm.com')//如果域名不是带www的网址那么进行下面的301跳转 { header('HTTP/1.1 301 Moved Permanently');//发出301头部 header('Location:http://www.phprm.com'.$the_url);//跳转到带www的网址 }
Apache下301转向代码
新建.htaccess文件,输入下列内容,需要开启mod_rewrite.
1)将不带WWW的域名转向到带WWW的域名下,代码如下:
Options +FollowSymLinks RewriteEngine on RewriteCond %{HTTP_HOST} ^lesishu.cn [NC] RewriteRule ^(.*)$ http://www.phprm.com /$1 [L,R=301]
2)重定向到新域名,代码如下:
Options +FollowSymLinks RewriteEngine on RewriteRule ^(.*)$ http://www.phprm.com /$1 [L,R=301]
wordpres根目录301跳转,代码如下:
# BEGIN WordPress Options +FollowSymlinks RewriteEngine on RewriteCond %{http_host} ^phprm.com [NC] RewriteRule ^(.*)$ http://www.phprm.com /$1 [L,R=301] rewriteCond %{THE_REQUEST} ^[A-Z]{3,9} /index.php HTTP/ rewriteRule ^index.php$ http://www.phprm.com / [R=301,L] RewriteRule ^index.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress
分析:php 301跳转代码只适合于全php页面或单页面做跳转了,apache/iis 301跳转适用于大量的网站域名301跳转了,他们两共同点都是实现301但两者各人有优点吧,大家自行根据自己情况选择吧.
文章链接:
随便收藏,请保留本文地址!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

WebStorm Mac版
好用的JavaScript開發工具

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具