php和asp程序如何进行301设置?
301是网站优化中比较重要的一部分,可以集中首页权重,也可以在网站更换域名或者改版时,将原有的权重集中传递到新的url上,防止出现错误页面,避免原有权重排名的流失。以下常德seo主要针对的是虚拟主机,如果是用的服务器或者VPS,可以在iss里面进行设置,方法相对比较简单。
一、php程序301设置
改程序所在空间(以win2003系统空间为例)必须开启ISAPI Rewrite后,才能进行如下设置,301才能有效。开启后,将以下代码拷贝到记事本内,并另存为.htaccess,再将.htaccess文件上传到网站空间的根目录下方行。
1、集中首页权重
将不带www的“domain.com”301重定向到带www的“www.domain.com”域名上
第一种方法:
RewriteEngine On
RewriteCompatibility2 On
RepeatLimit 200
RewriteBase
RewriteCond %{HTTP:Host} ^domain.com$
RewriteRule (.*) http://www.domain.com$1 [NC,R=301]
第二种方法:
RewriteEngine on
RewriteCond %{HTTPS} (on)?
RewriteCond %{HTTP:Host} ^(?!www.)(.+)$ [NC]
RewriteCond %{REQUEST_URI} (.+)
RewriteRule 。? http(?%1s)://www.%2%3 [R=301,L]
2、网站更换域名
例如笔者的多个域名,需要将几个域名的进行统一,方便用户浏览,这样其他的次要域名就可以用301重定向到一个主推域名。
RewriteCond %{HTTP:Host} ^www.domain.com.cn$
RewriteRule (.*) http://www.domain.com$1 [NC,R=301]
3、网站改版,
内部url有所变化,可以批量301重定向到新的url上。
RewriteRule ^/oldpage.htm$ http://www.domain.com/ newpage.html [R=301,L]
二、asp程序301设置
1.首页重定向
asp程序设置301相对简单一点,把以下代码放到网站首页(一般是更目录上的index.asp)的开头即可。这个方法可以设置多种情况,可将不带www重定向到带www,其他次域名重定向到主推域名等。
<%
website=request.ServerVariables(“Server_name”)
‘获取当前访问的域名
if website=“domain.com” then
’判断如果你的域名如果是不带www域名
Response.Status=“301 Moved Permanently”
Response.AddHeader “Location”,“http://www.domain.com/”
‘做301重定向到带www的域名
end if
%>
2.利用web.config实现
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name=“WWW Redirect” stopProcessing=“true”>
<match url=“.*” />
<conditions>
<add input=“{HTTP_HOST}” pattern=“^$” />
</conditions>
<action type=“Redirect” url=“http://www/{R:0}”
redirectType=“Permanent” />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
将以下代码拷贝到记事本内,并另存为web.config,再将web.config文件上传到网站空间的根目录下即可行。