|
|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:
" q) N1 r% V$ u. }4 V5 V5 C. l; p7 I/ F( Z4 ]% K- p
用header实现单页面的301跳转
2 X! S h" U1 J2 _, m) X+ P$ N- header( "HTTP/1.1 301 Moved Permanently" );
( N! Q0 y1 x4 B$ } - header( "Location: /my/m/" );
复制代码 % ], }/ V( U5 y' t
也可以用htaccess文件来实现单页面的301,规则如下' }1 A) ~8 M' w( H% T5 R
- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码
9 r4 G+ I) d9 O
* s9 l$ h# W9 h' a; f! Z0 X$ z1 O' d. {+ e, k! u4 k
( M0 j* I/ A; U4 Y- r
如果你是用的windows+iis,也非常简单。& V* p7 L @3 V" K5 |# `
; ]' ~3 k9 V( d2 w
首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。! F8 [- z9 g3 ]% U4 |: [
原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。# }; o9 B) W. k6 t; ^/ G, {( u5 M
: I8 L$ C* D" [. V. _然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。% f# Y& Q) |, z3 Y
9 D5 m. S% h1 I6 T9 p最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。
0 C* T; B' ?! p% a/ B3 H; {PS:最近研究发现的新的方法,不用建新的虚拟主机。
. }$ p9 v! Y1 T1 G$ T首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。) Q0 r) H9 m; |0 G
打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。
+ u" B! Y6 g0 o0 P: s4 w4 L- <?xml version="1.0" encoding="UTF-8"?>7 r* d' X2 c! b9 g$ b
- <configuration>, c+ [4 E1 D8 O! T
- <system.webServer>
& n4 S g0 J# V- s8 H - <rewrite>
6 P$ w3 e6 L$ _ - <rules>
1 U9 u9 }" C- N# z. ?4 O - <rule name="301Redirectwww" stopProcessing="true">1 d5 D; n ?- u/ U1 _
- <match url="(.*)" /># J( o. {* z- R) N0 l0 E, j3 @- O+ _
- <conditions logicalGrouping="MatchAny">
7 L5 u) h' O# ]1 o+ C5 u/ |- r - <add input="{HTTP_HOST}" pattern="^xp37\.com$" />) i1 O9 m5 R0 V$ r6 W
- </conditions>
+ f# e, w; _& A9 I1 x: H - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />* X( J6 I, C4 v
- </rule>6 w+ Q/ e( v4 R3 u! B. k. V4 l
- </rules>
1 D9 A8 Z* w$ L2 H+ V3 `- B6 q - </rewrite>
+ u5 d% \) X: f - </system.webServer>
9 g" Y6 L5 O: a+ i7 z% r9 ? J - </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可
# t, q! f X$ J- C3 n- <rules>, n6 O. L/ ?* }' l; y3 q
- <rule name="301Redirectwww" stopProcessing="true">3 S" z8 l7 e D( F
- <match url="(.*)" />
1 h( P/ x+ t) A0 E1 q. Q - <conditions logicalGrouping="MatchAny"> k$ t) R) w& v( R% ]; \
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
" l: `; ]6 ]+ i- G) R0 s - </conditions>& b. o$ E1 h, h* ]* h( y8 ?
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />
6 R7 W: k5 k: I! Z$ | - </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。% O. P) n7 d v; P
|
|