|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:- n0 W: b, ~4 N4 n, X5 ]
$ Y6 c; G# J. V3 C1 ^; R; G9 V7 X# j用header实现单页面的301跳转
% O. A# V" W# u" z- header( "HTTP/1.1 301 Moved Permanently" );9 c5 m, t3 |6 y% V/ e8 L- ~0 z ]
- header( "Location: /my/m/" );
复制代码
* X6 w; [' Q) B也可以用htaccess文件来实现单页面的301,规则如下
. S6 t2 M- [) x( z( Y `8 r& c# l2 ?- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码 2 h- G) X6 T" U C* t+ |& M& p
! w. w8 t+ }. `2 M
# v1 b0 ]/ h; D' o: ^& z7 l2 F
! D2 J) t2 a* R; w- T* B+ H# X0 M/ i如果你是用的windows+iis,也非常简单。( S1 H" y& ]% s+ G. [9 |
) X9 B$ a [0 b7 h4 }) n首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。$ T: ~1 ^* w) p7 l7 K
原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。2 k5 r! B3 X, N- e
% f- p0 y3 v1 `: }) p, i- p+ v然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。
7 q! Z( e* U& c/ v _. u: a8 m' k
' a4 Q8 q5 ?2 d* g最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。$ f1 `( I0 M, L8 \% { e
PS:最近研究发现的新的方法,不用建新的虚拟主机。
+ \2 d; c5 T. G" Z4 |9 t首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。
1 p: n1 q- R$ q" h: `% C打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。
, r) ~/ e) A( d0 s. L6 ]- <?xml version="1.0" encoding="UTF-8"?>
1 u& |& ^, r* N: _+ J- t/ @ - <configuration>) [0 v" F _9 |+ M% \5 v
- <system.webServer>
% v) U) G" g9 m n) c. `9 h% Y/ F - <rewrite>% o9 _' o: W/ v. e6 @0 P
- <rules> g: h3 D3 o: A5 {
- <rule name="301Redirectwww" stopProcessing="true">
8 Q6 @9 D1 i, I" m3 Y. `0 y' R# Z - <match url="(.*)" />; `) A) V6 r" P+ H
- <conditions logicalGrouping="MatchAny">/ I. n2 I0 E2 y0 F6 {9 j
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />* x1 Z- `2 i4 m2 s7 ^
- </conditions>
+ f: J, h9 l7 j, ? - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />
5 \3 E* p& L; [# K) z- X - </rule>
, e9 ~1 [6 l, m6 E7 E/ T F; J$ P1 X0 B - </rules>* x% q7 H7 O: k/ M1 n4 l
- </rewrite>0 l0 c/ d& b# t+ _% ?
- </system.webServer>
2 \& V& \- W! _- g, T+ q- ~2 N - </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可 u! u1 i0 @+ _' K
- <rules>
7 f$ s: e# S' ?5 ~ - <rule name="301Redirectwww" stopProcessing="true"> M: w, W4 _) R- o( d
- <match url="(.*)" />
1 F g8 B$ z2 m2 R. A - <conditions logicalGrouping="MatchAny">1 o9 o8 T1 B" u! t# W
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />$ c$ T, L" a* h
- </conditions>% z# m3 A1 G" _0 q; ^
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />( e9 G) F0 m2 s% G# J$ ]# V
- </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。9 i5 l, k* k5 {9 Y
|
|