|
|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:% z* U/ {* Y) b' c6 ^
& V6 r8 F4 k" L4 Q" x用header实现单页面的301跳转
; B* Z% |1 D) K: c& Q, ?* q, X- header( "HTTP/1.1 301 Moved Permanently" );( ]7 w* j% _+ }) p$ X8 e
- header( "Location: /my/m/" );
复制代码
; s7 E1 M6 h9 @! `4 D- _4 i也可以用htaccess文件来实现单页面的301,规则如下
! `, }% y- ~+ r' }- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码
# }- D$ Z* U( X- U/ j5 C3 z, D; G+ C. D) o, V# D5 X% T# T
* t0 L- P6 i/ ?( y5 |) |; K4 D
! X0 V/ c6 a5 l0 N) K如果你是用的windows+iis,也非常简单。" Z7 z5 @, B$ P. O
$ K# v- A9 r+ _% }$ R# h: @首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。$ _' @1 s& L; |* a4 y! o
原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。
" R- N- I5 z5 c! ]3 c/ N9 R: y- r8 ~( c
& s; X+ t! k- H然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。. E5 L& }/ I* u9 y8 H- I8 w/ p
! V/ ?+ R3 m5 d
最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。# R0 o* J# N% V' O0 O( H E
PS:最近研究发现的新的方法,不用建新的虚拟主机。+ N X) X$ I& R- `- X
首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。, `) a. i* w# D7 p s) G2 q# I" o8 L
打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。
7 o. l. P& v( f v2 M' o9 r3 L: y G- <?xml version="1.0" encoding="UTF-8"?>
, U* [4 w4 |+ C1 h3 j" M - <configuration>/ N6 d+ `& g3 q9 \ w0 @- p
- <system.webServer># T) w8 J/ f4 ?( u" \
- <rewrite>8 K, ~3 o @, d& r) b+ x, d A
- <rules>9 R, o4 V1 b2 l: m2 {5 _, J4 t" E& [
- <rule name="301Redirectwww" stopProcessing="true">
/ H( u+ i, M; D9 f2 H* S - <match url="(.*)" />
: K2 [* t1 g/ N' K. j" h - <conditions logicalGrouping="MatchAny">! L9 q8 B' Y* \' x& ?( }, e( l9 q
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />' n' W4 Z! `8 `, y$ d6 a0 A
- </conditions>
- u3 Y: ?0 F7 j" l" B, ~& g* E6 L - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />
% m. s7 o! S- o# z+ S8 ^7 ^ - </rule>
Z# ^8 L7 G1 F2 i3 W; w) }4 Z/ u - </rules>0 }# Y: V M. S* A: n# |6 |
- </rewrite>/ j. D3 D, \+ z7 D/ ]1 m
- </system.webServer>
* Z6 V/ H$ k& q0 F2 G6 P - </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可& p. W7 W) p% ]3 N% i
- <rules>) {* \$ l4 m% O- S
- <rule name="301Redirectwww" stopProcessing="true">
( x8 h' _% h. Y - <match url="(.*)" />* y, L L9 Q) D/ R' E; P
- <conditions logicalGrouping="MatchAny">
e9 v9 O) R2 M+ y - <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
8 _; v6 p6 l9 Y+ @$ t - </conditions>
' f* m$ K* K$ P, a; o% K2 o1 ] - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />
; p% q3 s @8 d6 Z - </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。
* Q* _; O3 l. s6 y# E2 m |
|