|
|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:2 z6 m- \# u! X: w
3 Z2 L/ x" M8 m/ \) L9 K
用header实现单页面的301跳转
9 W) h5 c+ [4 n! @" }( a- header( "HTTP/1.1 301 Moved Permanently" );: ?. c" ^1 D9 h# [* g
- header( "Location: /my/m/" );
复制代码
# o* O3 w* P2 D! R也可以用htaccess文件来实现单页面的301,规则如下' d r0 z: J& G" P% I& \: O
- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码
9 w- c. t: E" H9 M1 F; C2 t' v+ U7 G$ a% \5 X
( i1 ?, g& N0 A/ i8 z( Q! O
4 @4 p4 U0 m3 Q3 G7 Z如果你是用的windows+iis,也非常简单。7 B& W" A8 [. A% s1 J I5 T( M
) v$ t* b& b) @6 s m& F首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。. S0 h% P1 W; A5 `
原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。
4 g6 }. s, N, _4 V* U3 L# N2 d% S
u5 V$ F7 V6 U. M: a
然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。
+ j2 d' \! b* X: K
$ H# o u+ O3 k+ r5 t最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。) A* Q. b2 U, ?8 D ~ F+ v9 }2 Y0 F
PS:最近研究发现的新的方法,不用建新的虚拟主机。* K. D; ^' _- o/ N4 x
首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。8 W$ T/ ~4 Y/ A6 w: F1 P8 B
打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。
, ?5 X* u0 c, a3 ]- <?xml version="1.0" encoding="UTF-8"?>
8 ?+ u' t9 g3 |. l* z - <configuration>
9 u7 h3 j( {+ G5 c3 E - <system.webServer>
& H `' @9 a! J/ @0 h J& ]4 Q - <rewrite># L- e% i# R8 L$ W* k
- <rules>8 T2 M' f0 f% _' X
- <rule name="301Redirectwww" stopProcessing="true"># D6 Q! N8 p/ K& K0 D+ y8 F
- <match url="(.*)" />
E' G. ` A! v/ R: {% R8 ] - <conditions logicalGrouping="MatchAny">$ q- e' E6 f% @8 E4 F" f! F% i
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />5 E, L! W: `! S6 F( t8 u j0 U
- </conditions>
+ Q5 ~! w; |, ?5 r6 J - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />
; B7 x$ {6 V* r# }0 c9 \ - </rule>
7 s1 T, W0 E: s8 B) U9 s0 Y - </rules># z1 U% `2 P. a5 p, e
- </rewrite>- c, Q$ W8 d* [& ?3 m0 R& u G
- </system.webServer>
6 D) R9 {& ~! G, P; e - </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可
" e. b' s5 f! [! U" v, u% n- <rules>6 d1 E+ K+ B! @3 |) ^
- <rule name="301Redirectwww" stopProcessing="true">
! G ~0 ?7 E, p2 x6 D - <match url="(.*)" />" t& j% `$ \) G; G9 ^3 Z
- <conditions logicalGrouping="MatchAny">; }1 D. X6 H! j" U% k
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
3 N6 }' Q/ x1 I! D2 m" z8 ~ - </conditions>& P8 {6 l2 a8 w; Z# G; U
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />7 Z2 ?3 V6 J9 T7 O$ t/ ?
- </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。
$ Q6 I1 R+ T2 ~- z0 a |
|