|
|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:
; v! d' k! r8 |3 l
1 k% s5 `" V6 L& V用header实现单页面的301跳转6 l+ l+ F5 ]+ L0 _
- header( "HTTP/1.1 301 Moved Permanently" );
5 H, a: I7 h Y' E; \ - header( "Location: /my/m/" );
复制代码 # e4 Y8 `: n; |+ h% ?" X0 M
也可以用htaccess文件来实现单页面的301,规则如下9 Q3 A% a s: z7 l o
- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码 ( P. E) G; g3 ?1 d2 j @
0 m* v# ~. ?7 H7 b7 \& K. u5 a2 u$ [# u% T* }6 D) `
5 i$ o: Y7 q d如果你是用的windows+iis,也非常简单。
4 p& R$ `2 N6 U" U+ K; V
/ T3 A/ B% e& f( @# G/ @) h6 e首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。
* G' u% O2 H/ x3 {4 z0 t原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。
* Z& x+ n( ?/ T1 s9 Z; B) J
; F' ~* K' U3 ]7 _然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。
4 @$ r( q: Y5 e2 U
* I+ `/ o, d% d9 J+ b
最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。
) g& h W9 f. `PS:最近研究发现的新的方法,不用建新的虚拟主机。
7 w; L: u, q. g- {$ y# G首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。 ?4 F% ]3 u; o& \& z7 T
打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。7 k1 J8 H8 O: G! P2 A; {
- <?xml version="1.0" encoding="UTF-8"?>3 ^0 {: x) u, X, r& Q
- <configuration>
& S3 T- W) \: T! \ - <system.webServer>& m0 r% Y' |3 F! W G
- <rewrite> D, t* W5 U: D2 g* I8 J) G
- <rules>% l3 Z7 M/ \ v2 I7 }
- <rule name="301Redirectwww" stopProcessing="true">
2 p1 I. Q$ f# j& Y* q _2 ~ - <match url="(.*)" />
1 @, l h% } d% i* a5 w& L7 C - <conditions logicalGrouping="MatchAny">. ~' @( B; ?. F* ~
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
0 z/ t! r: i" f- X$ Z- f - </conditions>
9 {4 O- V3 E& F1 ] - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />- T- R7 d" _% q6 p, A. [
- </rule># B+ Y# _5 \9 @$ R1 H) H
- </rules>
5 I0 v5 O3 ^4 P6 {$ X - </rewrite>: I9 D/ f, d' A3 d0 E7 `9 M% _
- </system.webServer>( r5 e4 b6 N6 [# v8 [2 ]
- </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可6 T% i! B9 ^7 d# |* @. H6 T1 s; a
- <rules>" s) G' K0 F0 |. d$ E8 w
- <rule name="301Redirectwww" stopProcessing="true">! i& s) ^5 D5 c O) o
- <match url="(.*)" />" [3 {7 {: u0 b, u
- <conditions logicalGrouping="MatchAny">
, H8 A3 F1 Q: N1 K - <add input="{HTTP_HOST}" pattern="^xp37\.com$" />& `1 ]0 |, }2 g/ J
- </conditions>, S l" N. j4 z; L) h; w
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />' ?3 X* r0 P9 A2 C
- </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。
+ C$ p& E6 ^1 M3 [4 ]( U! ^2 R |
|