|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:& ], L% r6 @% X6 t$ q
8 S J! j) y+ J; f' o用header实现单页面的301跳转
4 R- ]6 @5 C" [& X u( e l3 ^- header( "HTTP/1.1 301 Moved Permanently" );
, R. G2 u* B) Z% _$ i - header( "Location: /my/m/" );
复制代码
: C5 p1 V/ [; [! p- |3 }- Y也可以用htaccess文件来实现单页面的301,规则如下
# H2 d( \( w2 r9 z# B% K2 U- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码
: [& I! w0 j8 ~' p
5 f. [, g- ?. Z7 J* w" }' @
& ?# `) A E3 V) f! a, j0 F5 f# ^ Y
2 U7 T& n2 D4 t8 Z! q如果你是用的windows+iis,也非常简单。
6 i. l$ I/ a' u) }/ }! k% e/ X/ t. V
4 H! t+ u) p f) ]% ?( o' G首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。/ X; H, ?/ K2 \+ y5 P" n+ I; k
原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。% g2 k5 H; j* v
( o2 X6 x1 u, m Y) c O然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。, z8 V; ~+ W4 k* G
& p$ ]6 {2 j8 Z6 m% T2 s$ |
最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。
, K6 b- U$ ]4 z+ QPS:最近研究发现的新的方法,不用建新的虚拟主机。
0 N& e' c* Z) o首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。
% I; u z5 H5 J2 A打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。
, w9 o6 d, v1 [: F/ j4 V3 C- <?xml version="1.0" encoding="UTF-8"?>2 B* C$ o# C4 Q$ M, t/ O
- <configuration>- k. R: J* Q: B0 n6 r* E: Y+ O
- <system.webServer>0 e, C4 D# b% n& [5 h
- <rewrite>- \2 v+ J c5 b& A9 `) U0 x2 q
- <rules>+ j6 P; n: {" z# d$ D0 z$ x$ |" ]3 P
- <rule name="301Redirectwww" stopProcessing="true">
2 u% u* V/ t+ t8 c - <match url="(.*)" />
) Q& ~0 U& q) L - <conditions logicalGrouping="MatchAny">
1 s8 y9 e( ^, Y. R - <add input="{HTTP_HOST}" pattern="^xp37\.com$" />5 F$ `9 \/ L E- B) L7 {9 g
- </conditions>
4 C8 P: B& N( M$ w" {$ T - <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />
! ^% W4 P7 G+ m# b G. z, k! @8 d - </rule>
& A& Z$ h6 g: J' P. M - </rules> N6 j! R; U9 x' N
- </rewrite>
) o! _" f& ?; K7 y - </system.webServer>
! t& @0 m" @8 W$ K - </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可
* z/ s' w7 f6 t! a- <rules>8 Z8 u$ B6 h: F/ t3 Z
- <rule name="301Redirectwww" stopProcessing="true">
" i. y2 t2 V2 M9 m" c8 i - <match url="(.*)" />
! m w3 d3 b5 S& H2 y/ J4 @- a" W - <conditions logicalGrouping="MatchAny">
; W8 y$ F1 |2 y( U$ h/ c; Q - <add input="{HTTP_HOST}" pattern="^xp37\.com$" />, j Y3 I7 q7 \2 L! g" T
- </conditions>3 `! t1 s! B @' W
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />
8 ~- O+ \) m- B. Z1 s - </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。
! g4 u. c8 J) w. N- C8 u |
|