|
|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:
2 i) u3 g/ k. u( y, ^+ y2 R; U* K o* `' m9 U
用header实现单页面的301跳转$ s$ X8 F( `/ h
- header( "HTTP/1.1 301 Moved Permanently" );
" v' V$ p' `1 t; a - header( "Location: /my/m/" );
复制代码
6 g# E% \$ p# X6 p( m$ m5 ]) g' h也可以用htaccess文件来实现单页面的301,规则如下3 B" T& n O7 }+ Y$ _$ l
- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码 7 F9 x C% N" z) r2 Q: W
1 a& o* y1 H) u, u9 X% @: T& |7 L: T
8 a* \; T0 W* g
" Q5 ~" e& z) V- L$ q0 \如果你是用的windows+iis,也非常简单。* f' l& B7 y! K- E( T
2 b& R; \7 }/ e/ a
首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。
( i. W0 F7 y! \/ u' {- b4 G a3 L! p原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。
4 Q$ R! u! Y! o6 {3 e, B% t
+ B% p- ?5 ^3 M5 y& X
然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。
/ g3 ]2 L) ]1 Y6 d+ `1 d& P
- i$ V5 w' E3 l, I最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。
" m8 j, u$ j% J- ?PS:最近研究发现的新的方法,不用建新的虚拟主机。
( P: I' s+ E* G首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。
* A7 z) n$ F+ E/ Q0 J* ~- r* L, A打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。
+ \+ _) ?! s3 O0 c8 b- <?xml version="1.0" encoding="UTF-8"?>5 d8 z# j/ P) [. \3 F' m# B2 v: x. \
- <configuration>
/ H- m# P5 `3 g' j - <system.webServer>* X$ s, F8 O% N- O( z z: V
- <rewrite>- q2 m" o2 q6 d% @
- <rules>' A. J8 P3 ^8 ?7 O% H! L% L
- <rule name="301Redirectwww" stopProcessing="true">
! D$ @( b) I' Y8 D4 t - <match url="(.*)" />0 c+ G% F1 q& M
- <conditions logicalGrouping="MatchAny">
$ \3 H: Y) ?* f' e; q% e3 r. d - <add input="{HTTP_HOST}" pattern="^xp37\.com$" />' |0 [* d1 N9 s
- </conditions>
& }; M8 l: I' W3 n w# M - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />/ `2 D; Y# @4 }0 u5 v. ~/ [; l" {
- </rule>
/ o3 r. } M$ {" _4 Y - </rules>1 V# f+ |. g; K' h$ E6 t
- </rewrite>
4 T$ S0 ~; k$ V4 d: ~% P - </system.webServer>9 P9 C# I& R0 A4 c' G
- </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可; t3 j( \+ x: g+ L" E' ?
- <rules>+ A, I- }% _ O
- <rule name="301Redirectwww" stopProcessing="true">& n+ u3 M7 T8 m/ k+ X
- <match url="(.*)" />8 J& G6 g6 v" D9 A) u" Q; V
- <conditions logicalGrouping="MatchAny">
2 p( t% O: i Y. T2 w - <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
# z1 P: R, D2 u3 Q/ i+ | - </conditions>
4 e8 \4 M- U0 b" Q7 k; [ - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />5 @3 m& X# q) n; |. [/ S! ^ z$ [- k
- </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。
/ U. _; a8 P9 M2 b |
|