|
|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:
; M; k# o- h" r: R: F C" m! f$ s" t7 n, N: `
用header实现单页面的301跳转
4 U( V. h/ ^) ^9 K+ i0 b3 u- header( "HTTP/1.1 301 Moved Permanently" );
5 h) K7 o) v+ z7 ]/ G$ M - header( "Location: /my/m/" );
复制代码 1 Q, @3 N! \6 B$ e7 E6 h
也可以用htaccess文件来实现单页面的301,规则如下# U; Z. j7 O$ J7 W! o: @ h
- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码 7 f8 H \5 m2 ?" S8 @
9 S& C$ n$ \1 S. b
* E' n a+ D; M1 R
) C$ l" c- O0 T' u
如果你是用的windows+iis,也非常简单。
( D( _3 {/ o9 E7 i) E7 y0 B- p/ N, Y/ |9 z |
首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。
, P4 l8 Z2 w$ g2 s: W8 C原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。9 S, |0 n$ |9 ~4 T6 i# V
; w9 P# [9 k' t3 Z T然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。0 W0 G8 B2 B9 E0 ]4 [
6 a- N7 z( M. P2 S3 ^/ e7 l最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。
2 O9 j J$ {* r1 tPS:最近研究发现的新的方法,不用建新的虚拟主机。" J* `1 W: m3 p9 ]/ U
首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。2 [8 U2 y' W" O3 b1 X8 {7 G
打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。
9 B% C, ^" {6 \1 s+ g/ g- <?xml version="1.0" encoding="UTF-8"?>
; \4 j6 X/ p5 e' C - <configuration>( n3 y" f; u7 _7 E5 e
- <system.webServer>% a6 ]) D: \! b% R- f5 i/ t
- <rewrite>
; `( t% Y% s: U - <rules>
0 b$ ]( ^# g9 U2 c - <rule name="301Redirectwww" stopProcessing="true">
' ?& q0 i1 ^' h - <match url="(.*)" />
! ]; |8 Y/ O p+ q - <conditions logicalGrouping="MatchAny">
2 [$ i' `4 L: F* [" Q3 T9 R - <add input="{HTTP_HOST}" pattern="^xp37\.com$" />
% s+ _/ h. L6 @3 _4 v; C - </conditions>
; E: b" ^3 H# j3 k$ F - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />6 H' r% o r! }, ]; A& n" p
- </rule>
5 ]9 G( b w; K. [3 ^/ E* o9 W+ _0 \ - </rules>) r8 [6 K2 }& G9 f7 {0 _
- </rewrite>( d8 @! r' A& o
- </system.webServer>
9 y Q$ y; G/ z+ d# V' u) L2 m - </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可
* F* u+ T, B+ S( {8 I- <rules>
. T1 s4 j0 d! q% p( f. r, i A - <rule name="301Redirectwww" stopProcessing="true">' h2 v: }+ z8 M2 ?- f1 J
- <match url="(.*)" />
3 o6 r4 r' V3 t - <conditions logicalGrouping="MatchAny">6 u+ F, ]( R) b: }4 v
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />. D+ ?( I/ Y! Z& T4 Z! J
- </conditions>
+ L) ~1 `5 A( d; B! p+ o! d4 ~ - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />
5 F1 R' m% L5 T# a2 C - </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。
& O' j& ]0 Q* r* O! [( D' M" a7 y' R0 n |
|