|
|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:" O/ Y6 P6 t* X0 C
2 j" \7 ?' a$ ?( D( l# ~) ^用header实现单页面的301跳转
3 [. ?6 e# X) i; E& `. y- header( "HTTP/1.1 301 Moved Permanently" );" s7 ? V/ j6 f8 M
- header( "Location: /my/m/" );
复制代码
; c, }! e( g5 N9 W0 F3 @- ?也可以用htaccess文件来实现单页面的301,规则如下
0 U9 d7 V6 J/ @+ c; x, `- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码
" g- j5 ~; U0 C6 ^% k' v; |* u
, N* ]; K6 b( e: W$ h" M0 s
7 v8 _) d' w- ]9 I" B! b
3 h6 G" Y2 k9 t( ?! z; l( F8 z如果你是用的windows+iis,也非常简单。
, y0 r( x- y" V# X' v" X, O9 M, p' m3 Z/ B1 c* ] A
首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。& M W! W' S! e! t
原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。
; Q! U7 g# ~2 s! }
; w- m8 y# Y% Q3 y( x然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。; N# I0 U2 ^! Q- n) q# t8 @- V9 u
+ N9 q# u6 L6 L! R7 k; i+ E' P! l9 z" f
最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。
; s% p9 A; v c0 j0 \9 v1 e2 ^$ DPS:最近研究发现的新的方法,不用建新的虚拟主机。' j4 x3 Q6 I+ U- B' S0 d
首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。
! y7 `0 F2 L; \: w/ t, T3 z0 }打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。
% s4 W7 N4 A0 n8 _- <?xml version="1.0" encoding="UTF-8"?>* `6 Z; Z3 h9 v: Z1 | v4 \ B- |
- <configuration>0 h2 U% e- J$ n
- <system.webServer>
" X" J( i* b9 M, p* [: X+ @& _ - <rewrite>+ o4 \# n" a% W5 e9 `
- <rules>/ K0 r" G8 w3 t- ]; h
- <rule name="301Redirectwww" stopProcessing="true">
; I) P% o% W+ f6 A) Q- O - <match url="(.*)" />7 _: r; d7 f' v% y- A! _9 o
- <conditions logicalGrouping="MatchAny">
+ Z. }5 O/ S. F# W/ ^: O - <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
# H6 H3 p! k$ h8 a9 X - </conditions>
3 @* k4 O9 W; g. j3 _ - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />
, q* X7 q* Y" b. [, ~3 R3 `; H - </rule>4 w5 u2 N3 K. O* D+ |/ U
- </rules>
3 u. k( }6 P: X7 ?2 ~2 [1 M' a) E - </rewrite>
" ?- o& Y8 o9 W& x$ K4 ? - </system.webServer>( I+ K% Q( e: ?1 t3 K; D3 ]
- </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可
0 T2 C, |% p! ~" n3 W- <rules>
+ h3 \8 b0 R( \6 _0 a: @& L' v - <rule name="301Redirectwww" stopProcessing="true">
& O1 ]$ x8 x/ `/ K3 ^ - <match url="(.*)" /># C. T% d$ ]& c) l# b6 `9 v
- <conditions logicalGrouping="MatchAny">
2 F. e. @! |1 P4 B3 t1 w - <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
3 A; E# D7 w" m/ b4 @1 h - </conditions>! `' o0 C4 j. S$ ]
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />
) @. @+ i" t/ D I0 p - </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。( k7 I6 ? F* }: Z. V( c
|
|