|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:
' F F2 s- e" U8 F/ e0 [; x4 _& l. p9 J
用header实现单页面的301跳转
0 D9 ^8 e9 T* _- U8 x3 P8 e- header( "HTTP/1.1 301 Moved Permanently" );
U! G2 l9 a4 v/ X) w5 J9 {1 r3 @, d' m - header( "Location: /my/m/" );
复制代码
2 O: x. p4 p" m C$ i ^6 _' @也可以用htaccess文件来实现单页面的301,规则如下8 Z* O( `+ t8 D1 C. y* _
- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码
; ~) K* u z4 c! t9 \6 b# u6 l/ n/ [7 B
, m% g, p/ s, m( h" _+ a
B1 ~4 S p" O% [
如果你是用的windows+iis,也非常简单。
- x f8 M+ s+ R
! g9 W. [( H" h, S% t6 W首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。
7 W2 e) y+ v% S# @5 P原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。
8 y6 \4 _( d, X' J) H
* v R; v/ [7 X4 Z2 b+ I- u A然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。4 F8 P/ I$ x( M, b
V7 U7 W4 Y- ~1 I( u4 N. L3 s最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。. v) _" G8 E+ [6 N: N+ l1 ~
PS:最近研究发现的新的方法,不用建新的虚拟主机。" [* } l: g; T3 B; Q& j
首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。3 t7 l$ g8 G& i, G @
打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。% S" d+ O$ u/ \
- <?xml version="1.0" encoding="UTF-8"?>
0 @9 \. E1 _5 v0 r2 ]4 h7 G - <configuration>
+ ]2 y a3 E( n- U8 S - <system.webServer>
& G1 h4 P/ u3 {3 d, }( B - <rewrite>
3 d2 t4 q" Y. f, Q2 `6 q - <rules>7 z0 D' I0 n' Q0 ?
- <rule name="301Redirectwww" stopProcessing="true">* C% Y! ^: P! H7 l0 x
- <match url="(.*)" />5 y' `" b/ J) l. Z( |' c
- <conditions logicalGrouping="MatchAny">2 O4 |, T# l, w2 S0 C: t. _
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />/ ~/ y! L2 ~5 }: a
- </conditions># Q% W z2 G. n a, B1 x
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />
/ E3 }, K/ A1 Q: ?0 ^$ a+ ^ - </rule>: {* R) A! j/ |# [6 ]/ u& O
- </rules> n# l% K8 C' ~
- </rewrite>6 e+ L% r& ]6 u A( L
- </system.webServer>/ t& o" Z1 l' Y
- </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可* M! e! S7 K+ {( ~3 H
- <rules>9 w" V7 W) o! g, ]2 u" f# _
- <rule name="301Redirectwww" stopProcessing="true">! L" O- {" V3 V. W8 p5 r- i2 g
- <match url="(.*)" />
4 f3 X; A1 s1 F# | - <conditions logicalGrouping="MatchAny">
4 b L8 I0 o$ k5 W4 `1 B - <add input="{HTTP_HOST}" pattern="^xp37\.com$" />( x |$ Q ]/ E2 [8 `+ C7 G
- </conditions>( b* c$ C; B- J
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />
7 A+ {+ a) ]( Q. p5 M% R+ s - </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。4 q) J1 F. R& j2 I
|
|