|
|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:
6 O D# ~+ n0 P4 j) A
+ y5 {) V9 ]0 s r8 ?; H& w. x用header实现单页面的301跳转
% z- ` [: K @/ c' c: s2 g5 B- header( "HTTP/1.1 301 Moved Permanently" );2 Z% u5 R" `$ J$ P/ J! {3 G, M2 F
- header( "Location: /my/m/" );
复制代码 - h# ~+ J0 D3 e8 c4 K- P3 a. @, I
也可以用htaccess文件来实现单页面的301,规则如下
1 n" B% Z5 h% L+ y' O5 D2 o- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码
# A9 F4 H# `/ c2 S4 z6 c# B& N* t( j$ v- O2 P( v9 o0 D
$ f# T$ g b# L8 A; V. [ b
0 J) n. s3 i6 r# U6 d7 }3 @' C% l
如果你是用的windows+iis,也非常简单。9 h+ J, s, J1 x6 J) @
9 |1 l* n* o8 {: s
首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。5 B, k' z: o' ?. i9 r
原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。
3 K! W u. M6 P% |
) l" p( k# p2 J. M% }然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。
; v5 ^0 l4 e' t( e
$ g, ]: c' J! ~3 D+ W& _最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。* w+ ? f) ]8 C/ p; B
PS:最近研究发现的新的方法,不用建新的虚拟主机。
$ b) v( W3 k+ \7 V$ B% \9 N3 L首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。
" D) f! k+ M, u0 i4 I打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。. m1 ^+ p2 a9 N+ S' _
- <?xml version="1.0" encoding="UTF-8"?>8 E5 x X9 w) V0 g1 S0 v
- <configuration>+ F/ k1 u; }' x. s8 t
- <system.webServer>
4 F* w/ y& V }# M5 H- d7 W8 h' d7 \3 s - <rewrite>
8 v$ n3 F8 Z" j7 n* W( b# k" b - <rules>. ?1 M+ G7 s: \3 s: [$ C, F% l
- <rule name="301Redirectwww" stopProcessing="true">
# I1 L8 R" A3 x! t" h9 v - <match url="(.*)" />
4 U9 B8 N' M2 C! H - <conditions logicalGrouping="MatchAny">; |, X' ~4 q& v% f8 l. q) D& b; |0 ]
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />5 |" J: G# M( d/ z+ S3 C5 [0 _% Y
- </conditions>
R; X' q8 j* [# Q8 _) \7 ^# e - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />
/ \ e, o; l' ^% Z - </rule>9 Z" _3 }) r, E% _
- </rules>
9 H" j$ e9 V$ x( e. D, O" E# s# H - </rewrite>
$ K2 M2 P* T1 u3 C+ z# @/ l - </system.webServer>
8 X' b/ a5 O. ?% U1 t+ _ - </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可% l- ^8 A" g2 m/ {' x/ h% V
- <rules>3 s0 S3 Z: r+ l; j
- <rule name="301Redirectwww" stopProcessing="true">9 U6 r( B6 S8 }7 h, x
- <match url="(.*)" />
2 Z# h( O( T/ H' `& k - <conditions logicalGrouping="MatchAny">" @. I3 E$ [8 M4 h! n1 b
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
& N' [2 q9 s2 ?& U Q - </conditions>& A% x6 l" M a3 R
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />. L/ z$ J4 U) Y$ e, `0 p/ j, M# M$ f
- </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。
, Z( M1 y6 r2 U; |: t. R/ S9 d5 P |
|