登录 支付宝登陆 [免费注册] 会员中心 在线支付 

301重定向的作用及4种环境下的设置方法

为什么要做301重定向:一般想把域名1指向到域名2的做法就是用301重定向,做301重定向对百度收录是友好的。比如yjcom.com 指向www.yjcom.com 需要做301重定向。

如果做301重定向:

1、nginx环境下

方法A:意思是不是www.yjcom.com的都指向www.yjcom.com
if ($host != ‘www.yjcom.com’ ) {
rewrite ^/(.*)$ http://www.yjcom.com/$1 permanent;
}
方法B:意思是 是yjcom.com的情况下才指向www.yjcom.com
if ($host = ‘yjcom.com’ ) {
rewrite ^/(.*)$ http://www.yjcom.com/$1 permanent;
}
如果您用了我司的智慧云镜像,您可以把如上代码选一种复制粘贴到面板上的自定义伪静态里即可。域名要换成您自己的呵。
2、Apache环境下 一般用.htaccess

新建一个文件名为.htaccess.txt的文档(注意前面的点号不能遗漏),在txt文档中写入以下301转向代码:
Options +FollowSymLinks
RewriteEngine on
rewritecond %{http_host} ^yjcom.com [nc]
rewriterule ^(.*)$ http://www.yjcom.com/$1 [r=301,nc]
或者
RewriteEngine On
RewriteCond %{HTTP_HOST} !^yjcom.com$ [NC]
RewriteRule ^(.*)$ http://www.yjcom.com/$1 [L,R=301]
保存文件,将文件名称末尾的.txt去掉,上传到网站根目录即可。上面的代码表示整站所有的以带www的域名www.yjcom.com为地址的网页都会301转向到不带www的域名yjcom.com(不仅是首页,子目录/网页也可以)。如果是其他域名要重定向到 yjcom.com 这个新域名,则在.htaccess文件中加入如下重定向代码:
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^(.*)$ http://www.yjcom.com/$1 [L,R=301]

3、Windows主机IIS下的301转向设置

在IIS 管理后台 -> 选择你要重定向的文件或文件夹 -> 右键”重定向到URL” -> 输入需要转向的目标URL ->选择”资源的永久重定向”。
另外,如果你的Windows虚拟主机空间支持ISAPI_Rewrite,那么在IIS下利用ISAPI_Rewrite不仅可以实现url 重写,还可以用来设置301转向,下面分别是三个版本的ISAPI_Rewrite对应的带www的域名301转向到不带www域名的代码:
# ISAPI_Rewrite 1.3 版本 域名的301重定向
RewriteCond Host: ^www\.yjcom\.com$
RewriteRule (.*) http\://yjcom\.com$1 [I,R]

# ISAPI_Rewrite 2.x 版本
RewriteCond Host: ^www\.yjcom\.com$
RewriteRule (.*) http\://yjcom\.com$1 [I,RP]

# ISAPI_Rewrite 3.x 版本
RewriteCond %{HTTP:Host} ^www\.yjcom\.com$
RewriteRule (.*) http\://yjcom\.com$1 [NC,R=301]

在其他情况下,如不同域名之间在IIS下的301重定向代码请看详细介绍:ISAPI Rewrite实现IIS 301转向。
4、用PHP 代码实现301 重定向代码
301重定向也可以在php文件中通过加入php header来实现,代码如下:
<?php
header(”HTTP/1.1 301 Moved Permanently”);
header(”Location: http://www.yjcom.com/index.php”);
exit();
?>

上一篇:百度判断手机终端并自动跳转uaredirect.js连接代码失效的解决办法

下一篇:首页与别人权重高的内页做友链有弊端吗

Tags: , , , ,