|
|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:
$ @0 {; ^. |8 I) R0 c$ j d! u
用header实现单页面的301跳转! J9 ?. {: V: ?8 ?3 v
- header( "HTTP/1.1 301 Moved Permanently" );
1 O( u9 r/ D" u2 ~; R: c - header( "Location: /my/m/" );
复制代码 - P- I1 E2 I# N" ^. Q
也可以用htaccess文件来实现单页面的301,规则如下' [4 X6 N: C+ P! d. B9 T/ [; c9 M& b
- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码 7 e1 q; G# I1 ]" j
# G$ T, S$ ^% ~4 P$ ^
+ T. ^1 g; a+ l
. |1 s2 j" k" n* s8 j如果你是用的windows+iis,也非常简单。6 C* z, ?, `/ [
5 z& a! [1 ]- j7 I' y首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。, m' P7 Y. J' _* k! ^7 p' \' F- s
原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。
; ^7 h& x) g& L
! r# J% y8 L, B2 H) W, _7 h然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。4 S5 |2 q0 ^" X6 g# U: c
4 t& H, \/ Q9 e" c, y7 e- i最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。
* e# e% L, N. v- yPS:最近研究发现的新的方法,不用建新的虚拟主机。
9 Y C9 @) F U% h首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。# ^/ ~5 N* J. `" i
打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。
6 ?3 u# ]4 }( L+ z+ Z5 s- <?xml version="1.0" encoding="UTF-8"?>) h/ _+ \* I9 n0 d8 i) Q b( b
- <configuration>
]5 {8 w3 C2 O8 _ @. _% k6 X6 U - <system.webServer>
; r1 A' p# e' P W8 ]2 U+ w - <rewrite>
4 m, w! d: D R! `" E# P3 ~. ` - <rules>3 X4 r+ R8 i: x0 X5 ]
- <rule name="301Redirectwww" stopProcessing="true">% t. o& F3 S! y2 @# [4 w
- <match url="(.*)" />8 {) ~$ h. R/ L F E6 n$ S; N
- <conditions logicalGrouping="MatchAny">
, b3 Y) j8 y; }( t - <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
8 `* s# u5 F$ Y, ^9 x: X - </conditions>7 {% Z. X2 k3 v: D% I
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />
/ j2 d3 y9 |! p4 W - </rule>
" [7 F4 @3 Z- M8 P2 ~ - </rules>( a) Q: |/ A0 L& m( O5 A
- </rewrite>: P! A+ i8 }. |- ?9 T! p. a$ O, e
- </system.webServer> e% T$ p% K) G5 \9 X8 A
- </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可
* r7 m* `- j+ V/ I- <rules>4 w: t9 n- O& r; G
- <rule name="301Redirectwww" stopProcessing="true">
( [1 W/ Z s8 N" q8 y, U n - <match url="(.*)" />
( }% ^4 C( w2 } - <conditions logicalGrouping="MatchAny">* U& W$ s# H4 ~% S: A0 u
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
$ g0 w1 E }1 q$ G: o( @ X - </conditions>
t$ m6 ~9 x; ?( ?3 a. f, ] - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />3 _! e1 ~- M8 H# l
- </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。$ \2 } x% r2 e0 l6 N
|
|