做301跳转还要将网站做成伪静态,这里不管是不是要伪静态才能实现跳转至少把网站设置成伪静态对seo有帮助,至于为什么做301跳转链接到wordpress如何做301跳转。
下面就简单说下在IIS和apache伪装静态下实现301跳转的方法。
windows IIS服务器:
如果您是windows系统的,在http://downinfo.myhostadmin.net/rewrite3.rar 下载一个伪静态设置安装包,安装前请先阅读说明文档。安装后会生成一个C:\rewrite3 的文件夹,直接修改文件夹里的httpd.conf文件即可,只需修改以下内容中的网址即可:
#301设置,此设置情况下cctv.com/aa.htm 会301跳至www.cctv.com/aa.htm,将cctv.com替换为您自己的域名就能实现自己的域名的301
RewriteCond %{HTTP:Host} ^cctv.com$
RewriteRule (.*) http://www.cctv.com$1 [NC,R=301]
linux apache服务器:
方法一:如果您是linux系统的,在您的网站根目录新建一个.htaccess文件,添加以下内容。若以前已经存在该文件则直接在文件头部添加以下内容。
[code]<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.abc.com$ [NC]
RewriteRule ^(.*)$ http://www.abc.com/$1 [R=301,L]
</IfModule>[/code]
#说明:www.abc.com请替换为您新的目标域名,这个规则将会将您的主机绑定的所有域名301重定向到www.abc.com
方法二:
案例:
访问 http://xobm.com ,则跳转到 http://www.xobm.com。
访问 http://www.xobm.com ,则不再跳转,直接访问。
即使用 http://www.xobm.com作为网站的主网址。
解决方法:
第一步:Apache虚拟机配置:
[code]<VirtualHost *:80>
ServerAdmin mac@xobm.com
DocumentRoot “/var/www/www.xobm.com/”
ServerName www.xobm.com
ServerAlias xobm.com //这句是关键,配置别名
ErrorLog “logs/dummy-host2.xobm.com-error.log”
CustomLog “logs/dummy-host2.xobm.com-access.log” common
<Directory />
AllowOverride All
Allow from all
</Directory>
</VirtualHost>[/code]
第二步:HTACCESS写法
[code]<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^xobm.com [NC]
RewriteRule ^(.*) http://www.xobm.com/ [L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>[/code]
其实做301跳转的方法还挺多的,还有一个最简单的方法就是域名商做url转发,
还有一种就是利用代码实现跳转功能:
1、IIS下301设置
Internet信息服务管理器 -> 虚拟目录 -> 重定向到URL,输入需要转向的目标URL,并选择“资源的永久重定向”。
2、ASP下的301转向代码
[code]<%@ Language=VBScript %>
<%
Response.Status=”301 Moved Permanently”
Response.AddHeader “Location”, “http://www.xxx.com/articles/301/”
%>[/code]
3、ASP.Net下的301转向代码
[code]<script runat=”server”>
private void Page_Load(object sender, System.EventArgs e)
{
Response.Status = “301 Moved Permanently”;
Response.AddHeader(”Location”,”http://www.xxx.com/articles/301/“);
}
</script>[/code]
4、PHP下的301转向代码
[code]header(”HTTP/1.1 301 Moved Permanently”);
header(”Location: http://www.xxx.com/articles/301/”);
exit();[/code]
5、CGI Perl下的301转向代码
[code]$q = new CGI;
print $q->redirect(”http://www.new-url.com/”);[/code]
6、JSP下的301转向代码
[code]<%
response.setStatus(301);
response.setHeader( “Location”, “http://www.xxx.com/” );
response.setHeader( “Connection”, “close” );
%>[/code]
7、Apache下301转向代码
新建.htaccess文件,输入下列内容(需要开启mod_rewrite):
1)将不带WWW的域名转向到带WWW的域名下
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^lesishu.cn [NC]
RewriteRule ^(.*)$ http://www.xxx.com/$1 [L,R=301]
2)重定向到新域名
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^(.*)$ http://www.xxx.com/$1 [L,R=301]
3)使用正则进行301转向,实现伪静态
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^news-(.+)\.html$ news.php?id=$1
将news.php?id=123这样的地址转向到news-123.html
8、Apache下vhosts.conf中配置301转向
为实现URL规范化,SEO通常将不带WWW的域名转向到带WWW域名,vhosts.conf中配置为:
<VirtualHost *:80>
ServerName www.xxx.com
DocumentRoot /home/lesishu
</VirtualHost>
<VirtualHost *:80>
ServerName lesishu.cn
RedirectMatch permanent ^/(.*) http://www.xxx.com/$1
</VirtualHost>
Apache下除了以上2种方法,还有其他配置方法和可选参数