使用ISAPI_Rewrite做实用的重定向-阿里云开发者社区

开发者社区> 科技小能手> 正文

使用ISAPI_Rewrite做实用的重定向

简介:
+关注继续查看

.htaccess文件的内容如下:

RewriteCond %{HTTP_HOST} ask.xxoo.com

RewriteRule ^(index.html)?$ /ask/

RewriteRule ^(.*)list-([0-9]+)-([a-z]+)\.html$ $1/ask/list.php?catid=$2&action=$3

RewriteRule ^(.*)show-([0-9]+)\.html$ $1/ask/show.php?id=$2


分析代码:

RewriteCond 后面的 %{HTTP_HOST} 是域名 

RewriteCond %{HTTP_HOST} space.xxoo.com 表示地址栏中的域名是否等于space.xxoo.com这里也可以使用正则 如:RewriteCond %{HTTP_HOST} space([1-9]).xxoo.com 这匹配的url包含了space1.xxoo.com  space2.xxoo.com space2.xxoo.com  .......space9.xxoo.com 这9个域名


RewriteRule ^(index.html)?$ /ask/   

匹配的是网站但域名ask.xxoo.com或ask.xxoo.com/index.html这两个地址: 重定向的是ask.xxoo.com/ask


RewriteRule ^(.*)list-([0-9]+)-([a-z]+)\.html$ $1/ask/list.php?catid=$2&action=$3

匹配地址包含

ask.xxoo.com/list-3-all.html 重定向的是ask.xxoo.com/ask/list.php?catid=3&action=all

ask.xxoo.com/list-45-high.html 重定向的是ask.xxoo.com/ask/list.php?catid=45&action=hight


RewriteRule ^(.*)show-([0-9]+)\.html$ $1/ask/show.php?id=$2

匹配地址包含

ask.xxoo.com/show-3.html 重定向的是ask.xxoo.com/ask/show.php?id=3

ask.xxoo.com/show-21.html 重定向的是ask.xxoo.com/ask/show.php?id=21

。。。。。


自己现在服务器在用的 ISAPI_Rewrite 3.x.x

<IfModule mod_rewrite.c>

RewriteEngine On

RewriteRule ^index.html$ / [NC,L,R=301,O] 

</IfModule>

匹配的意义:把根目录下面的index.html 默认跳转到不带index.html 防止index.html分散权重


说明:O表示对URL进行标准化L表示Last Rule,最后一条规则,也就是后面的重写规则对他不起作用,防止被其他匹配的规则再次重写。这里的路径可以是相对路径也可以是绝对路径。

说明:[I,RP]:I表示忽略大小写,RP表示使用301转向,以上都是整个域名重定向。



.htaccess的301重定向代码


把不带www的域名301到带www的域名


RewriteEngine On

RewriteCond %{http_host} ^example.com$ [NC]

RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]


“RewriteEngine On”,开启 Rewrite 规则开关;

“RewriteCond”指重写的条件。后面的字符串通过正则表达式进行匹配,匹配字符串以 ^ 开头并以 $ 结尾。此处 %{http_host} 获取当前主机名称。条件为“当主机名称为example.com”时执行下列的重写规则。其中“[NC]”指不区分大小写;

“RewriteRule”,定义一条重写规则。此处含义:跳转到“http://www.example.com/”接上访问请求的网址中 example.com 后面的部分。[R=301] 指重写为 301 重定向/跳转([R] 单指跳转,意义等同 [R=302]),[L] 指最后一条匹配规则。


把老域名301到新域名


更换域名时,老域名的权重不能浪费了,把老域名的顶级域名和带www的域名都要301到新域名,代码如下


RewriteEngine On

RewriteCond %{http_host} ^(www.)?old.com$ [NC,OR]

RewriteCond %{http_host} ^new.com$ [NC]

RewriteRule ^(.*)$ http://www.new.com/$1 [R=301,L]


现在无论你访问old.com,www.old.com,new.com都会301到www.new.com 够完美了吧!而且所有的内页也会跟着301,接下来至少等待2个月,期间不要删除原域名,静等权重完全转移!

需要注意的是,wordpress默认情况下不支持该条命令,因为wordpress的网址本身就是伪静态的,要想实现这个功能,必须先把wordpress的内页生成html文件。


==重要提醒==:IIS 6中的.htaccess 301定向


以下规则适用于 IIS 6中的 ISAPI_Rewrite 2.x 3.x 中的httpd.ini或.htaccess

注意这儿的.htaccess不是apache中的.htaccess 规则略有不同。


RewriteCond %{HTTP:Host} ^sjyhome.com$

RewriteRule (.*) http://www.sjyhome.com/$1 [NC,R=301]




本文转自 gutaotao1989 51CTO博客,原文链接:http://blog.51cto.com/taoyouth/1788084

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
使用apache mod_rewrite方法随机提供payloads
本文讲的是使用apache mod_rewrite方法随机提供payloads,本文中讲述的方法更适用于真实渗透测试环境中,因为电子邮件钓鱼往往是威胁到整个公司,而不是只威胁到红队的测试环境。因为电子邮件钓鱼具有高针对性,并且手动设置攻击载荷对攻击来说也是很麻烦的。
1378 0
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
10018 0
IIS8如何安装和使用URL重写工具-URL Rewrite
原文:IIS8如何安装和使用URL重写工具-URL Rewrite 下载和安装URL Rewrite IIS8默认是没有安装URL重写工具的,必须要自己下载安装。 如果IIS上默认有安装Web平台安装程序,我们可以使用平台自动安装URL Rewrite重写工具,打开IIS(Internet 信息...
1590 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
10880 0
阿里云服务器安全组设置内网互通的方法
虽然0.0.0.0/0使用非常方便,但是发现很多同学使用它来做内网互通,这是有安全风险的,实例有可能会在经典网络被内网IP访问到。下面介绍一下四种安全的内网互联设置方法。 购买前请先:领取阿里云幸运券,有很多优惠,可到下文中领取。
11814 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
13821 0
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
11881 0
23706
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载