|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:
4 I7 X9 }9 G9 s% ]6 z* @! H1 F5 }: A0 l0 D$ y7 F' J
用header实现单页面的301跳转
}) Z, o. e2 |. W( h0 n) \- header( "HTTP/1.1 301 Moved Permanently" );9 t0 ?& S8 k. l, m* V o& O
- header( "Location: /my/m/" );
复制代码
, V/ H6 t9 I/ E& f0 w0 P也可以用htaccess文件来实现单页面的301,规则如下
5 P! O! T# @5 c) u- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码 3 Y, r4 X* k* e: K1 d: @ ?
: C0 i7 j- d1 G8 |
6 F% E0 v' i* I3 e1 x, Z9 E' d# b F$ f- z' j( w
如果你是用的windows+iis,也非常简单。" j' a, }8 \& h9 Q0 |% ~* H
8 E' w5 }3 Q+ a3 t( l首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。) z6 k7 ?3 T! J# v2 O8 U
原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。
" m, }! |; U) ]1 {& Q
9 M4 |7 {8 S7 o- ^- O) T1 Q0 J3 A
然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。+ L4 ~% V. M2 H3 Q# C: F
5 u% j' W4 a4 P& G
最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。
9 B" I2 o; r' M" tPS:最近研究发现的新的方法,不用建新的虚拟主机。
1 G& F, J" A! \& M首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。/ V1 ^" P# G: X$ k0 E+ H
打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。
. U$ K/ @( b& i( W7 ^- <?xml version="1.0" encoding="UTF-8"?>/ j1 o: {! Z5 B; A4 b( W
- <configuration>9 u! t2 b- I0 S& u
- <system.webServer>
! @9 t1 }; _5 E- m5 ]/ b+ Z - <rewrite>7 ^/ C( N4 ^1 u8 N
- <rules> l( L2 D) W% d3 h; w
- <rule name="301Redirectwww" stopProcessing="true">) z5 O+ o5 ~- y d- ]) |; [
- <match url="(.*)" />
- _% C4 [+ f- C; h - <conditions logicalGrouping="MatchAny">0 s% a- T* Q1 O1 P& P) ]( I
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />6 g: G$ }# b t! c( w" m
- </conditions>7 I8 F" g# g6 o4 w _3 }
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />$ o' m4 q2 ^ |# C' F% N
- </rule>
7 g) E/ T/ }* V - </rules>' _* d" _, L# ]) s# L
- </rewrite>
" N8 u3 }3 S3 b" c- L4 j0 G- l - </system.webServer># u" Q5 c9 U9 P0 ]+ F0 }9 a
- </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可4 ]& j0 {8 a- J; h. C2 F3 ^
- <rules>
% M: G$ z5 P6 R4 f6 P5 r4 Z% P - <rule name="301Redirectwww" stopProcessing="true">
" P0 m- M M* j2 N0 w) J0 z - <match url="(.*)" />
& W% b; v% U. q- i0 }( `6 I - <conditions logicalGrouping="MatchAny">/ ]* r1 `1 l: j! T1 g* d% l
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
$ d, c- Q {& j7 e/ o5 `$ P0 K - </conditions> a3 C% b' d2 L8 y4 o6 G) ^ o* R
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />, g% p( _6 Q @, ]
- </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。0 n3 K3 I- l) y8 g
|
|