本文目录:
- 1、php网站建设怎么做301重定向设置
- 2、wordpress两个域名301重定向代码怎么解决
- 3、域名设置301重定向如何操作
php网站建设怎么做301重定向设置
做网站优化,我们基本知道url标准化需要采用301重定向。重定向说直白点,就是通过方法将各种网络请求重新定个方向转到其它位置,也就是通常说的,网页跳转。那么如何设置和制作301重定向呢?下面列举几个比较常见的情况:
步骤/方法
第一种:对整个网站的多个页面设置301重定向方法
如果要对整个网站设置301重定向的话,建议大家还是单独建立一个301.php,文件名可以自己取。代码如下:
?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的网址那么进行下面的301跳转
{
header(‘HTTP/1.1 301 Moved Permanently’); //发出301头部
header(‘Location:’.$the_url); //跳转到带www的网址
}
?
注 意一下:代码if($the_host !== ”)中的“!==”是不完全等于的意思,也可以用“!=”不等于,这样,除了可以将siyuan-seo.com 跳转到带www的网址,还可以把所有绑定到这个空间的域名跳转的。
301.php文件写好后,用ftp软件上传到网站根目录下,一般就是web文件下。那么怎么调用呢?其实也很简单。
在需要设置301重定向的页面中调用301.php,代码:?php include(“301.php”); //301重定向 ?将这个代码放到你所有网页的最前面,这样就做好了。如下图:
2
第二种:网站单个页面设置301重定向方法
如果仅仅是网站中某个单页面进行301重定向设置,其实很简单,只要在PHP页面的头部加上下面两行代码就可以了:
?php
Header(“HTTP/1.1 301 Moved Permanently”);
Header(“Location: “);
?如下图:
其实,大多数情况下,我们一般是不需要设置301重定向的,用到的情况也是很少,大家知道怎么做就可以了。
当你发现自己的才华撑不起野心时,就请安静下来学习吧
wordpress两个域名301重定向代码怎么解决
WordPress的两个301重定向方法
1.比较简单的域名301重定向:即将A定向到B 以下为引用的内容:
$the_host = $_SERVER[‘HTTP_HOST’];//取得当前域名
if($the_host != ”)//判断获取的这个域名是不是你想要的(即定向后的域名)
{
header(“HTTP/1.1 301 Moved Permanently”);//发出301头部
header(“Location:域名) //跳转到你希望的域名exit();
}
将上面的代码放入到根目录的index.php的最开始的地方就行了,实现的效果是原域名下的所有地址都将转跳到新域名的首页。
2.另一种比较麻烦一点,不过效果会好一点:
他可以将原域名下的所有链接地址定向到对应新域名的地址,即:域名变化,但是参数不变的。代码如下:
以下为引用的内容:
$the_host = $_SERVER[‘HTTP_HOST’];//取得当前域名
if(strtolower($the_host) != ”)//把这里的域名换上你想要的
{ $URIRedirect=$_SERVER[‘REQUEST_URI’]; //获取域名后的参数
if(strtolower($URIRedirect)==”/index.php”)//判断是参数为/index.php就显示为/
{
$URIRedirect=”/”;
}
header(“HTTP/1.1 301 Moved Permanently”);//发出301头部
header(“Location: 你希望的地址格式”)跳转到你希望的地址格式
exit();
}
以上两种方法,不仅适合wordpress的程序,一般PHP程序都可以使用的。写到这里其实我的博客的301已经做好了,我用的是第二种。下面的一种方法,有兴趣的也可以研究一下啦。
3
在linux并且支持rewrite就可以通过.htaccess来设置了,代码如下:
以下为引用的内容:
以下为引用的内容:
BEGIN WordPress
IfModule mod_rewrite.c
Options +FollowSymLinks
RewriteEngine on
rewritecond %{http_host} ^[nc]
rewriterule ^(.*)$ [L,R=301]
/IfModule
END
域名设置301重定向如何操作
第一种情况,如果你有服务器或者vps,且系统是windows系统的。
在iis下,可以很简单的设置实现全站重定向 。
具体方法是:在VPS里把 域名的网站搭建好以后,按照同样的方式搭建一个xxxx.com的网站。然后打开“iis”。在XXXX.com的网站上鼠标右键打开选择属性,选择“主目录”标签,然后按照这个图设置
第二种情况,如果你的系统是Linux的。
做整站301跳转,很简单。如下修改文件httpd.conf或者.htaccess文件保存就可以了:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^xxxx.com [NC]
RewriteRule ^(.*)$ [L,R=301]
第三种情况,如果你是虚拟主机用户,如果你有子目录,恭喜你,也可以整站301重定向。具体方法是:
1.新建404.asp,把下面代码放到新建的404文件中保存。
代码
%@ Language=VBscript %
%
Dim PageURL
PageURL=“http://”Request.ServerVariables(“HTTP_HOST”)request.ServerVariables(“URL”) “?”Request.ServerVariables(“QUERY_STRING”)
PageURL = Replace(PageURL, “”;,””) //修改为你的老域名
Response.Status=”301 Moved Permanently”
Response.AddHeader “Location”, “”PageURL”” //修改为你的域名
%%@ language=”VBscript”
%@ language=”VBscript”
2.新建index.asp,把下面代码放到新建的ind文件中保存。
代码
%@ Language=VBscript %
%
Response.Status=”301 Moved Permanently”
Response.AddHeader “Location”,””//修改为你的域名。
%%
Response.Status=”301 Moved Permanently”
Response.AddHeader “Location”, “”//修改为你的域名。
%
3.用ftp在网站根目录新建文件夹名为301,把上面的index.asp和404.asp上传进去。然后打开虚拟主机控制面板,添加子目录,把域名xxxx.com绑定到301文件夹 ,绑定后设置所属404页面为404.asp:
第四种情况,如果你是虚拟主机用户且你没有子目录,缺银子呗,呵呵,也是可以整站301的,具体方法是:
在网站根目录http.ini文件中,添加如下代码:
[ISAPI_Rewrite] 3600 = 1 hourCacheClockRate 3600RepeatLimit 32
了;fid=t3:69:3了
RewriteCond Host:^xxxx\.com$
RewriteRule (.*) http\://www\.xxxx\.com$1 [I,RP)
当301重定向实施完之后,旧版本页面跳转到了新版本页面,或网址规范化了再或者其他的,大部分的站长都不会注意到301的HTTP状态是否返回成功。就在此时,可能有些网站的301重定向不传递状态或者出现404错误的状态码,这样容易造成任何情况下做的301重定向无法达到效果。笔者认为,想要正确的、有效果的做301重定向,一些细节还是需要注意的。
例如:404错误(页面未找到)或者200 OK(页面成功加载);301(返回301状态码成功)
正确的HTTP状态码:
错误的HTTP状态码:
本文来源:https://www.yuntue.com/post/72585.html | 云服务器网,转载请注明出处!