|
|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:6 v; J2 r9 s) C: Y. U
! x/ p- B# s6 Z- `& g! }# ~用header实现单页面的301跳转1 r7 Z) X5 n h
- header( "HTTP/1.1 301 Moved Permanently" );
; \ E) B+ _( B- G - header( "Location: /my/m/" );
复制代码 0 I6 g( w. m. O8 f
也可以用htaccess文件来实现单页面的301,规则如下% m+ m2 ?- ^4 ~9 E% o9 J. A
- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码
: V2 R4 F3 a1 o7 z' c
$ `0 q& k- Z0 ~& h) u) @& Z( X- u. s, {' R$ h
$ R/ U( C* T' q1 b# D" h如果你是用的windows+iis,也非常简单。3 ^# j, j3 |* R! M! i
' {' n6 \3 d9 F- Y; R7 Q首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。# M: L+ W- i/ ~; x- r4 T/ ~
原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。+ q9 P, C7 I0 N1 d& l0 A- s: H: a
6 _% Y0 T: ~5 f9 I2 ]然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。
. h* c, G l8 _8 i1 k- f
7 V3 E/ d: W7 y: |& x- A+ g
最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。
) {* x% A' c5 ~0 F+ ^PS:最近研究发现的新的方法,不用建新的虚拟主机。
, e5 S4 {* e4 O' Y8 f5 ]首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。
7 S, l2 o; E: g8 c- Z打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。
0 U) Q% q6 T/ h8 E- ?3 ~+ v- <?xml version="1.0" encoding="UTF-8"?>
) [* I1 {. q/ |3 e+ I - <configuration>
4 w2 R. v% Z* c2 `8 S5 ^ - <system.webServer>
- ]" n/ `, q# s6 C3 Q' J" f0 a - <rewrite>
, C- E G- l" Y; s: a7 \ - <rules>
' G5 G+ m1 g/ L1 A* ~( X - <rule name="301Redirectwww" stopProcessing="true"># o' T5 ~; i: U* v; u- U( w, {# n
- <match url="(.*)" />+ S! D6 i+ R7 `% b' A3 ~
- <conditions logicalGrouping="MatchAny">0 c; O! ]) c7 F2 @# T
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
; Q) r$ C, ^# h; ^) A7 _! ^ - </conditions>" [5 U' g8 [: s2 q' f! T+ j
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />
' C3 w* m1 m+ S+ C" m0 E" u - </rule># a* l, \* e5 }$ i, a+ k
- </rules>- d7 ~* } D/ t3 |" p2 \
- </rewrite>
, d7 `, Q- u' n( s1 Q' { - </system.webServer>& n- {8 p. X1 |
- </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可
9 w% D0 J% `2 k. ~- <rules>- [- |5 L8 K6 ^! w/ D& D
- <rule name="301Redirectwww" stopProcessing="true"> |; m& V* E0 t9 h0 X' { u
- <match url="(.*)" />3 E8 N/ X- O; [1 Z) }( N* v
- <conditions logicalGrouping="MatchAny">
6 \2 L ~4 C) h) F7 @ a+ C - <add input="{HTTP_HOST}" pattern="^xp37\.com$" /> I Y3 x9 P, M" {- j# t" o2 x
- </conditions>
7 K c* s: j. F7 z( L/ c; F - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />! d" }9 O* }. K7 X" w [ ^
- </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。
$ z( E9 j& t+ U |
|