|
|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:
* n2 J& G* @7 [" [. T# B
2 a2 _) N5 ^- d: j; F+ h用header实现单页面的301跳转
5 ?! P8 n: D( `9 l; n2 H- header( "HTTP/1.1 301 Moved Permanently" );4 X% D/ w# R4 v- `+ a" M# e
- header( "Location: /my/m/" );
复制代码
* S2 M0 i' B1 z3 F也可以用htaccess文件来实现单页面的301,规则如下8 o1 Z# ?# X* Z; h; x
- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码 9 G( C% K |/ _& `' _+ i
( R( ~ g* p6 m8 [7 ]; P d, Q# I
* s& O1 U. I& E% ~6 h! r Q
2 C% W& L: C/ T5 A2 x
如果你是用的windows+iis,也非常简单。
7 {" k- x8 P3 R4 B
2 o0 t3 `2 I5 z* Q }9 R/ `/ L首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。( N; z- z; z0 G( Y+ a
原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。/ [. K c7 |6 }- ~# I) l5 i0 Z: t) z
; a( k1 X: I, m' ?' d. u然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。) R- ^% S7 z" w0 Z
! w5 h6 P' [; R- W; z0 \! F
最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。
6 W* `1 y5 V6 M1 APS:最近研究发现的新的方法,不用建新的虚拟主机。
6 \# c- j5 C. F. V1 p; G% c+ `9 y' l9 D首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。
T" [8 i! W9 ]打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。: ^% C6 U% ?3 ?" @* r/ H: ^4 x) a
- <?xml version="1.0" encoding="UTF-8"?>) F2 Z7 k( n# j% j6 z3 J
- <configuration>4 x$ p, z( G! C9 I. l
- <system.webServer>
9 {" ?. Q' `: Q- V) E O - <rewrite>" M* x; _+ [# O
- <rules>- _+ U' D$ Y# E5 F) H
- <rule name="301Redirectwww" stopProcessing="true">1 ~% A7 M7 [% l: C9 Q; z% p+ g& c& u
- <match url="(.*)" />
- n6 `& b+ m8 N - <conditions logicalGrouping="MatchAny">
; |. L5 }* l$ p! @( T1 M. F: M4 S - <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
3 ?) ]# y* d. t( d. n: C6 r( V. h - </conditions>7 Q, r. l* G( j% t$ P+ U
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />
& S9 `9 m% u& Y. s& ~) Y - </rule>
) ^/ m/ N2 }& H% Q' g! F \7 \ - </rules>) B& t1 M2 A+ C6 F P2 A9 m6 S9 w) m$ e
- </rewrite>& C2 B$ K, n, i0 B" _
- </system.webServer>
8 s% f/ |0 M& E; @8 A7 E" l - </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可9 t9 G0 h5 w% a- W% W# k
- <rules>1 M6 S4 F! t8 H5 {% L
- <rule name="301Redirectwww" stopProcessing="true">
5 X c: M5 f& ` M, K& V6 l3 g - <match url="(.*)" />
$ ~' [2 B" R$ l) S e5 ]$ S% x - <conditions logicalGrouping="MatchAny">. l2 J. G) m! M8 T
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />& N) \6 n- q, |# |; ^9 e; F7 w
- </conditions>: q1 t9 E% Y. M5 q0 F% J
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />0 i7 v8 ~8 C! g8 R5 M6 h
- </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。' Y' D4 e7 V+ D, D$ F
|
|