|
|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:& V. t2 t4 y! _8 U( x
( B' o+ I! z3 [ h- T- m J% ~用header实现单页面的301跳转
~8 l- A& U; a! ~" N- header( "HTTP/1.1 301 Moved Permanently" );
. `. J' B4 U ^) [ Z, S- j - header( "Location: /my/m/" );
复制代码
8 [7 a2 T. U' z, f3 I; ?, n" T% E8 ^也可以用htaccess文件来实现单页面的301,规则如下
4 N( S' \, I! q5 _) E* f; `3 n9 r- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码 5 g; i- Z' U* f/ _. Q! j. e
* h" n8 _* s# l) ~" ^9 n7 c7 {% y8 h+ B% b# A; [$ X
& e5 I' o5 c) _* H, ^如果你是用的windows+iis,也非常简单。
0 a3 w3 j4 M/ d) s# H- Z. o- ~& {) a$ a8 T
首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。
# u6 A5 I, M# p8 A5 e; l8 C0 G原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。
- d% {! b3 z/ m2 P
+ W* @* [: X- B( b. ^; t3 D然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。: x; c& m: A, r! K6 c
1 r' b. L- m; S7 w/ x ?6 T& G最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。" a0 N$ c: Q. W; O% |- A
PS:最近研究发现的新的方法,不用建新的虚拟主机。
: \* t, }2 B" G( b8 ~6 o首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。
0 m- E- Y! B' p8 W- S打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。
6 }+ \+ C& V" Q4 N+ ]( y) m- <?xml version="1.0" encoding="UTF-8"?>: ^1 W9 ^2 }" f( l8 r
- <configuration>3 ~3 y2 u+ j; E! S0 Z( ^; C
- <system.webServer>
5 |0 w; }+ X( |" M- c9 V" p - <rewrite>, R( k4 d/ K3 O$ u7 u2 j
- <rules>
5 f3 X0 y, t- q! J+ k4 x. @ - <rule name="301Redirectwww" stopProcessing="true">
3 m: [& V" W2 E# } - <match url="(.*)" /> ~! t3 h9 R6 F2 v
- <conditions logicalGrouping="MatchAny">$ K$ W2 b0 _) y1 t' g& z: F2 g2 g
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
: n. d2 Z8 ]9 g8 D - </conditions>& K; E. \% ]+ `- F0 L6 Y) T
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />2 ~8 ~9 Q& M% h( K! Y
- </rule>7 W) A) K U1 P0 o
- </rules>
3 k3 i& R1 s( a1 L a - </rewrite> M9 f/ v/ n% U/ d5 j2 x
- </system.webServer>7 B2 }. b5 Y' F! z
- </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可5 U4 T* Z- o0 ]& P$ p8 g9 T2 y3 |
- <rules>, E' V% B* x$ c( t
- <rule name="301Redirectwww" stopProcessing="true">4 c/ H2 q5 v$ Y9 A$ m ]
- <match url="(.*)" />
h, _& j5 K: b" r% k - <conditions logicalGrouping="MatchAny">
?/ `& ~# z8 g7 M - <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
( w9 ]4 n, l' ^ - </conditions>
2 W: n+ j, x h1 i1 F0 s: T- j& W - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />
5 G! u8 V0 K6 B/ P3 }+ ^* \1 ^ - </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。* F* {5 j) S# W7 f
|
|