|
|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:0 c. | x% d/ c* f; I
; b, c1 m4 Y0 W- x2 D3 |9 T
用header实现单页面的301跳转
g4 t! l' _& s- header( "HTTP/1.1 301 Moved Permanently" );
+ s, W N6 }3 N/ \* [$ H - header( "Location: /my/m/" );
复制代码
3 k9 I: |* X, l* I) D0 v% z. F也可以用htaccess文件来实现单页面的301,规则如下. ^1 q f$ g8 c2 v; O5 S
- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码 - v4 v! { ], @1 g1 f( o6 ?
/ S) ^; R* N/ }' r; V
4 G0 Z7 \# z/ `" C( z" l% H
8 f5 _/ \, l0 _
如果你是用的windows+iis,也非常简单。
1 h6 O4 B9 }! g" X6 {0 G7 V r- t4 D! H! N& C& K
首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。
9 _0 X$ C X( o' }3 s) V原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。0 A1 E% h) W% ]8 |6 g1 F
' l1 Q. y% f. ?' g, x+ R/ q
然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。
8 D8 ^2 p, k. Y# F- p. h
9 v: a) N/ Q" O2 j
最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。5 S: J H0 g- O" f5 r
PS:最近研究发现的新的方法,不用建新的虚拟主机。+ @2 ^* Z, L8 T( {
首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。- Z* ~9 S! i, Q( z) f3 X
打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。
- p- G( B2 h3 s: m/ w/ g- <?xml version="1.0" encoding="UTF-8"?>8 w% s6 |( W/ X+ R8 x- T
- <configuration>
% H8 u! J6 j" [8 F5 C# x - <system.webServer>
3 Q8 y! y( _% v% k+ `. p$ U* ~6 D - <rewrite>* m0 t9 [* c/ L4 Q
- <rules>9 C4 S- K# Z+ {) k
- <rule name="301Redirectwww" stopProcessing="true">
' n0 B) V. X9 V0 k- S - <match url="(.*)" />0 B- e& z/ s2 q6 z- O
- <conditions logicalGrouping="MatchAny">
, g: K( O8 n$ J! u6 R6 i. L - <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
; L, S+ C+ O1 d2 h; ], \2 n% C - </conditions>8 g. T! _7 @' s+ p: r
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />6 n- `' y/ n9 |+ c+ V8 J
- </rule>9 E& T' `# D9 p- Y5 m q+ G3 w) D
- </rules>3 b1 ~& u( F2 D7 ^/ b
- </rewrite>
* U8 J) U) M1 G9 [% J+ g - </system.webServer>" S$ l$ j8 \$ T8 \# e
- </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可
9 F2 i- R1 t1 H+ A- <rules>, D0 [/ [/ G6 m2 n
- <rule name="301Redirectwww" stopProcessing="true"> k1 e( x" d. W/ }/ v9 A
- <match url="(.*)" />
" C/ M$ k4 y- y9 U - <conditions logicalGrouping="MatchAny">$ W, R |% Q: _( U$ E
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
5 c8 T4 P, l0 @5 ? - </conditions>
3 P3 u0 o" `/ P3 w* p7 W2 H - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />2 l$ B& c/ s6 [, p$ x& S1 p
- </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。
4 }, |: `7 R# y# W9 K |
|