|
|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:" o+ X- a0 p5 Q1 b* H- b
. Z4 t; w7 q: E; V用header实现单页面的301跳转
. J2 V6 T) S. g8 q: ~; }- header( "HTTP/1.1 301 Moved Permanently" );
) H* N9 `! R0 ]* q. I; P( D& s; s - header( "Location: /my/m/" );
复制代码 - s; @% Z5 ^7 G* ~
也可以用htaccess文件来实现单页面的301,规则如下
7 ~! [* F' _) w* ]- c' @- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码 - M/ s+ e" d d% f: L
/ J9 l, y. h' z6 z: S4 z9 b* b4 n3 L
. ?% t: R' v( |) h7 S6 ^
如果你是用的windows+iis,也非常简单。9 o$ z1 z$ l- z; r0 w
$ y- u- U6 `4 r! V M% ?+ ^, f首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。
0 K4 H0 {7 W4 L原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。
8 g! r6 L* e$ B7 e* u% D8 j& G( @
0 m) F% }1 [$ W. V! Y然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。) i% u; o3 b7 p- W( }
" W0 o; _2 s& T4 v: ^最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。, v3 E7 u" \) U% ?
PS:最近研究发现的新的方法,不用建新的虚拟主机。; d8 O1 s1 }/ Y3 f- O
首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。3 N' k- r( K2 H: N% M
打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。
) h& `. z, G1 w# l* ~- <?xml version="1.0" encoding="UTF-8"?>6 B- j$ {, }3 z& Q2 y C
- <configuration>
1 P) Y" H& G3 t$ f - <system.webServer>
) F, N: v7 Y8 l: S& E - <rewrite>/ g: e& P l1 p( O1 D* P0 z
- <rules>% N- H, v+ k7 k7 a0 U) ~8 \
- <rule name="301Redirectwww" stopProcessing="true">
5 i( p) X# A) D2 B5 b5 R - <match url="(.*)" />+ ]+ O9 C( ?, h0 E. z5 H, W
- <conditions logicalGrouping="MatchAny"># g0 l, Z5 R! i' F7 Q. Q
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
+ F6 f# R4 D( N7 M# Q. r - </conditions>
& b' T6 V& P! I0 P - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />4 V- g8 m! R k7 p8 \6 A
- </rule>
6 q, Z) M0 h3 G8 i* @- ^* H& H, r - </rules>
, |2 s" l- Q# K4 K/ p - </rewrite>
+ q% B$ {: a& B/ u1 H - </system.webServer>9 {* L2 O, R/ Q! o/ y
- </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可
; Y& e) R' S8 u7 u- M. o' ]- <rules>" t/ t, f: \6 v
- <rule name="301Redirectwww" stopProcessing="true">: }/ z! F M! `0 N" R8 m1 M) I* u
- <match url="(.*)" />
3 U/ S. J2 v, a9 o( M/ A0 C - <conditions logicalGrouping="MatchAny">
0 P- C, g0 r; j! }; j - <add input="{HTTP_HOST}" pattern="^xp37\.com$" />" J2 M6 x V9 Y. N# H7 l
- </conditions>
* o4 \: R8 R4 Q3 @" i$ e* K( _ - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />" u/ T% [+ Y# T: V& G5 K
- </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。! h( C; S, P2 C+ \' C7 k7 S1 m% h
|
|