|
|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:
2 H% a* X( E. G3 h9 l: [* y5 x) z5 {( O/ U" Q$ t N4 M
用header实现单页面的301跳转. T: Y5 v5 Z* x9 i$ _# ], i9 | {2 b
- header( "HTTP/1.1 301 Moved Permanently" );
4 U. s8 M/ s0 e9 d/ z+ i - header( "Location: /my/m/" );
复制代码
9 z; G; E: M( V0 q; F也可以用htaccess文件来实现单页面的301,规则如下" G* m# ?$ o# m/ ~- B3 m
- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码 3 K8 R0 b) b) p0 k! }
# g" u+ L0 l! _1 J
: k7 e" {8 u" `# g8 b! o2 D+ ^9 p0 i& x0 E w
如果你是用的windows+iis,也非常简单。
. X" C- B$ W8 F$ _6 C; Y. |
9 j) y6 \2 y u' z+ T7 h. ]首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。
: i' f- A- }! F$ l原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。
% _6 ^. Z8 d- h9 X3 {' F4 {
* p" I' Z/ f: i4 z# \/ f
然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。
2 O: b( f4 k# L; k9 R+ o
" b) L) Y' U+ S2 i最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。' ~% n q1 R5 H ^! c8 `* }2 z: x
PS:最近研究发现的新的方法,不用建新的虚拟主机。/ f. j5 z& d; O7 k, } z K
首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。1 D: R# D) Y( l8 W% }/ s
打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。7 E7 n, V. W* b
- <?xml version="1.0" encoding="UTF-8"?>7 p% R6 n6 n' [6 M- \) t' `7 [- o
- <configuration>3 z; a+ O0 M6 e
- <system.webServer>
7 o" }6 I9 O2 b - <rewrite>
- s( d& ^ c2 c& I7 V - <rules>
( F0 S! ?! ~) C - <rule name="301Redirectwww" stopProcessing="true">
7 S! d$ M1 R. p; R9 m - <match url="(.*)" />
( E+ v0 i' P0 p; _. i - <conditions logicalGrouping="MatchAny">3 k* w Z9 a1 m9 p4 s+ X0 c4 S* d- J
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
5 r( m- ~# l4 f. M - </conditions>
) f- j0 _6 `) ], X: C - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />
6 [. i4 X' O; @2 Y - </rule>
4 [# l& V' z6 [- r" p - </rules>
/ r! U e' A8 z7 A0 }! v/ M; E - </rewrite>5 }* C" w5 ?9 L2 N* F
- </system.webServer>
2 N% l% O! _ b7 E5 s - </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可
" w* d1 H* S/ m* {5 N) \- <rules>1 k9 S M5 H. e7 S# A
- <rule name="301Redirectwww" stopProcessing="true">
4 {, y2 F# P8 a( @( p/ W4 ]5 W - <match url="(.*)" />1 ]3 ], ?; m; A
- <conditions logicalGrouping="MatchAny">
& n9 ` h- r2 U8 g8 x6 ?. J( [ - <add input="{HTTP_HOST}" pattern="^xp37\.com$" />' b' k) P. [: }
- </conditions> ]9 O' k Z! N2 B& g( n
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />$ n7 j" m) U4 ?1 ~0 ^
- </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。
' r' g* [' ^ ]' v K% P |
|