|
|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:' W4 L. E2 {- T" O p
: v6 U% A2 N, ^& b- u) ~) C" _
用header实现单页面的301跳转
8 U1 Q: [) n7 \0 |8 W0 J+ w- header( "HTTP/1.1 301 Moved Permanently" );
& @7 G* t4 T9 R; G0 w7 }1 T% S* |" b - header( "Location: /my/m/" );
复制代码
$ O2 X$ y! @$ J, @. t1 L也可以用htaccess文件来实现单页面的301,规则如下
1 o& P! z9 C% X' w& b6 I8 z- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码
" z& i2 b8 z2 M
7 R7 C% ?9 R# M l. _6 \; N/ X: ^' a) `: e
+ r0 r7 [- t! Y1 ~) I% r如果你是用的windows+iis,也非常简单。$ ]) x. J* D$ G1 H
6 B6 w. c7 [5 T$ k
首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。
! l5 f, U% |- v- M原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。. j9 J2 B3 F! Y& o) I. [0 e8 s' l
' N6 u; m, \, j+ {6 q然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。
: N) G& v. P( V! Z0 q8 d$ e5 d
& y& P, d$ a. c& @/ e* s3 @! v) Y3 }
最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。. \3 l% f5 M! \4 B
PS:最近研究发现的新的方法,不用建新的虚拟主机。
. R5 N8 h8 n4 H首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。
! U4 n) O9 X" e打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。
; X Z) y y j, n) G: [+ o5 m- <?xml version="1.0" encoding="UTF-8"?>. H* Z' l$ a2 X. y
- <configuration># H% @, [: ~ d% \ u1 @ Z# I
- <system.webServer>9 k1 r9 Z: N" |
- <rewrite>
: W& `* s$ ]; K - <rules>
0 w: D% l1 g* v. _/ R7 }$ L: c - <rule name="301Redirectwww" stopProcessing="true">
& B2 i1 j- b" }+ y - <match url="(.*)" />, o9 G' e1 A0 S+ N0 g% Q0 q
- <conditions logicalGrouping="MatchAny">
- ?# k0 |( D: |0 r - <add input="{HTTP_HOST}" pattern="^xp37\.com$" />, |1 Q9 r8 t& M& `1 |
- </conditions>
: {* Z* u$ n* v/ g# u - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />
2 t s* i' X- k- z5 ~/ q3 | - </rule>; n( R' X7 r. G; E9 l, R! J
- </rules>
7 e4 H0 f v0 H' B- [ _$ B - </rewrite>* m( r1 E1 l) I& k: c1 V* J
- </system.webServer>
) ^# R6 G; }5 y5 l - </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可8 W; f' v) l0 R2 v r" v% Z. u. h
- <rules>
& @! w& }3 e% X; y7 b - <rule name="301Redirectwww" stopProcessing="true">
; ~. i9 J4 s) S+ U/ [ - <match url="(.*)" />
' s8 U5 p0 j1 b0 S/ p0 R) [ - <conditions logicalGrouping="MatchAny">2 _# B9 Y9 O; I6 _7 c$ ?5 i
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />+ y+ r3 h+ Q' C2 V8 I+ [2 t6 |8 z. {, ~
- </conditions>
& W8 Y* k- p3 @7 x7 ~2 T# O7 q - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />9 C- F% o( i- W) S+ Z8 p9 }" m) ?, M
- </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。
" L% ~2 L: P7 B2 |; E) E |
|