|
|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:
) R) p9 `/ W7 |# U0 ~" p' Z; I, I% y# {% O+ ^7 c. F: ?7 e- ~
用header实现单页面的301跳转
- C" C! ~% h! x) r5 f- header( "HTTP/1.1 301 Moved Permanently" );
3 c: V* @, L) ~9 J - header( "Location: /my/m/" );
复制代码
3 V& t1 j" }5 j: U$ A- {: K也可以用htaccess文件来实现单页面的301,规则如下
. _" A& V0 P/ O" u+ |" P8 e1 {7 a- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码 5 o; a \0 d; n) k. b; R
- \: t+ M# Z0 N) _5 x% a6 p$ ` R! N9 r/ P- p# ]0 L9 n, d+ ~
+ A3 b5 B# P: f# M; J如果你是用的windows+iis,也非常简单。
. O+ G( w. l, e, a- S3 s0 S2 b; L
5 A' I+ O" M9 K, j+ M1 ]首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。, `, H" d8 q/ L" ^* d7 G
原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。
" {2 }( X' T) T* h, x
# E2 A9 p% J' v; T* \; ?然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。* U9 @/ w. K8 O$ @! Z. Z8 C
6 ], v7 A9 m" W v2 Z( R! ~最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。6 C" D& \0 M. K2 C& n
PS:最近研究发现的新的方法,不用建新的虚拟主机。! h N- T0 B7 i( J( u$ m; q
首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。, H/ r" H9 A8 F o3 M; `# R
打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。
9 l" a! u$ f/ K$ v, i5 F6 H4 ?- <?xml version="1.0" encoding="UTF-8"?>3 y( _; d1 F! C8 N+ X+ l% a
- <configuration>6 S- X6 _8 g$ J: t% K: @
- <system.webServer>
0 @# F4 x7 W' `4 I X - <rewrite>7 ]+ `# F" K, ?) N
- <rules>
7 i" X; V y7 z - <rule name="301Redirectwww" stopProcessing="true">
& @/ u, Q# R O; k' e# a/ R/ p - <match url="(.*)" />! O4 W: ^* p' l: q, q
- <conditions logicalGrouping="MatchAny">
( E: w7 E2 g) ^$ J C& X - <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
3 y: Z/ V0 ]! o9 K( U9 m - </conditions>
% X9 X. v% Z: h% P& M - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />
. W! S; g$ U8 ~" V. V! V3 g - </rule>- c' W' u! a! c
- </rules>
# T8 ^8 d- X; I" ?) p1 M - </rewrite>
: o F9 I8 E( o- U' b - </system.webServer>
0 T( Z+ k: o1 h: R: e - </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可; N+ l2 x/ v1 s; W
- <rules>
& l3 ^+ b: k' j! Q) ~5 ~6 b - <rule name="301Redirectwww" stopProcessing="true">
. Z! m8 ^7 d- w' v) Y* | - <match url="(.*)" />
# R/ k% S" k9 _ - <conditions logicalGrouping="MatchAny">
: `. }( z+ ]7 V/ v - <add input="{HTTP_HOST}" pattern="^xp37\.com$" />( Z7 U2 Q2 A6 `! w
- </conditions>) Z8 O) S V: ]5 J$ q( M
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />* Z. P4 A/ k2 A d0 c! T( e
- </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。0 f" C3 s/ M& e( D! W
|
|