|
|
网站改版,生成静态页,想把生成的根目录去掉,去百度提交了站点改版,需要做301跳转。网站是个老站用aspcms做的,php的简单直接写到代码里即可,如下:. W5 i* U4 \+ }+ I8 ~) s
& I- ~( d& o% R! G4 N4 V# U/ u; c0 D用header实现单页面的301跳转9 d+ u" `9 O* k! B
- header( "HTTP/1.1 301 Moved Permanently" );
J/ o n" q5 g6 ?1 H - header( "Location: /my/m/" );
复制代码 + ?# _$ G; x' ^& F' L: D
也可以用htaccess文件来实现单页面的301,规则如下5 N( [, v) ~4 g; t; b( l( Z+ Z' [
- RewriteRule ^(\?(AXXX).php.*)$ "http://新的域名/$1" [R=301,L]
复制代码 - t1 Q/ |$ {% [9 X8 k1 f6 Y
5 r$ U& N* D6 ?; e
, j9 A4 J, u- X" q; ~$ x* G
. u& e- B% e5 I8 H如果你是用的windows+iis,也非常简单。
0 v: G* S6 P% I# i+ X8 a
% K% v% [( D- `$ V5 b5 Z8 W首先你要在IIS中已经添加HTTP重定向,如果没有需要先添加。: G; v( V# R" Z4 b4 ~) C
原网址http://www.le00.com/aspcms/news/263_2.html更改后为http://www.le00.com/news/263_2.html,首先如果没有aspcms这个文件那么先要在根目录建立一个,然后选中这个文件夹点右侧HTTP重定向。
; ~; C5 o* W# b0 ^+ i+ n
! z' F$ j! w; N. a5 _. p, u5 a
然后重定向部分直接填根目录网址http://www.le00.com/,选择301永久重定向。点击应用即可。& l2 K# p; ]4 P8 P
% R8 V+ e2 O$ ?7 S# J& x ?3 w3 l最后过两个月左右时间,查看下如果百度360等搜索引擎收录已经全部更改为新网址,那么就可以删除对应的部分,大功告成!windows IIS服务器中asp php asp.net网站如何做子目录301重定向就是这么简单。, V0 O- q6 d; i( W# d) p# @
PS:最近研究发现的新的方法,不用建新的虚拟主机。: U0 ^1 a: T8 W- `
首先,推荐在IIS7.5以上使用,因为这些版本很方便安装URLRewrite,如果没有URLRewrite,先安装,具体可以参考windows2012中IIS8如何安装和使用URL重写工具-URL Rewrite。( t. X; V G) \6 o+ F) @
打开网站根目录的web.config文件,把以下规则直接写在节点中就可以,如果没有web.config文件,需要在根目录新建一个,内容按照下面的完全复制即可,注意:所有配置规则都要写在节点中。网址就替换成你的网址即可。 U' x8 H! R* O5 z9 l. j4 y6 R5 Y
- <?xml version="1.0" encoding="UTF-8"?>
+ l, X+ W7 g% ]$ ~ - <configuration>
2 u6 }* |' E# Q - <system.webServer>6 k+ I0 @) K0 Y) }4 t
- <rewrite>
7 \& d1 {# _/ ~ - <rules>) |( m: g* L) ]/ ?7 ]! h: @* I* P
- <rule name="301Redirectwww" stopProcessing="true">
2 |8 \ S) A' U5 O1 G - <match url="(.*)" /> p+ K' h, y( I8 c% U! n
- <conditions logicalGrouping="MatchAny">5 K8 K( [7 ?4 g8 _. f
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />+ e7 \. q: A5 o* A
- </conditions> m# G# k; W7 W3 n
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />1 X7 X4 `: u: h* ~+ H) F
- </rule>
% g+ ?" W# }5 j- ` - </rules>2 |9 X$ ^7 k# h. H1 s3 f. T
- </rewrite>
- @. R3 D+ ^' k& p4 {, Y( q- ]+ ^ - </system.webServer>
! e! {7 s: W2 R( C4 q5 V% G+ K$ `$ B - </configuration>
复制代码 301跳转规则,如果有web.config文件中已经存在多条规则,在其中添加如下一条即可
" d# L k: J8 ?9 M6 o- N. }, F# e8 q- <rules>7 A# B6 z; y. @ p* G- p
- <rule name="301Redirectwww" stopProcessing="true">
) t5 W7 H1 |4 J$ W6 i - <match url="(.*)" />
4 b* R* u" @5 a4 a& Z. \ - <conditions logicalGrouping="MatchAny">- B$ w9 ?$ E: T$ s. g# E
- <add input="{HTTP_HOST}" pattern="^xp37\.com$" />0 O! e5 F9 I) H+ E& ~, K* ^( D
- </conditions>- N6 P" s+ ]2 `( n8 }6 g
- <action type="Redirect" url="http://www.xp37.com/{R:0}" redirectType="Permanent" />1 Q' J+ j l8 Q: v
- </rule>
复制代码 这里名称301Redirectwww可以按照自己习惯命名。
+ I: r' ?/ h7 @% X& C! i# [ |
|