香港六合彩生肖图|香港六合彩今年开奖号|
个人工具
名字空间
变换
操作

Rewrite

来自站长百科
跳转到: ?#24049;?/a>, 搜索

Rewrite主要的功能就是实现URL的重写,它的正则表达式是基于Perl语言。可基于服务器级的(httpd.conf)和目录级的(.htaccess)两种方式。如果要想用到rewrite模块,必须先安装或加载rewrite模块。方法有两种一种是编译apache的时候就直接安装rewrite模块,别一种是编译apache时以DSO模式安装apache,然后再利用源码和apxs来安装rewrite模块。

基于服务器级的(httpd.conf)有两种方法,一种是在httpd.conf的全局下直接利用RewriteEngine on?#21019;?#24320;rewrite功能;另一种是在局部里利用RewriteEngine on?#21019;?#24320;rewrite功能,下面将会举例说明,需要注意的是,必须在每个virtualhost里用RewriteEngine on?#21019;?#24320;rewrite功能。否则virtualhost里没有RewriteEngine on它里面的规则也不会生效。

基于目录级的(.htaccess),要注意一点那就是必须打开此目录的FollowSymLinks属性?#20197;?htaccess里要声明RewriteEngine on。

目录

Rewrite语法

RewriteRule

常用Rewrite规则

IIS中使用Rewrite

我们通过在IIS中安装一个名为 ISAPI_Rewrite 的ISAPI筛选器?#35789;?#29616; Rewrite 功能,您需要做的事情只有一个,就是修改配置文件 httpd.ini ,这里举一个简单的例子来说明它的用法。

假设您要实现这样的 Rewrite 功能:您希望当用户访问 /about.htm 的时候?#23548;?#35775;问的是 /index.html (您的空间里可以并不需要存在 about.htm)。

那么,设置方法是:

1、创建一个文本文件,内容为

    [ISAPI_Rewrite]
  RewriteRule /about\.htm /index.html

这里,RewriteRule 这一行即为规则行,这一行由三部分组成,三部分由空格隔开,第一部分即 RewriteRule 这几个字,第二部分为用户访问的地址(使用正则表达式),第三部分为?#23548;?#23384;在于服务器上的文件路径。

2、将上述文件保存,命名为 httpd.ini 。

3、将这个文件上传到您的网站根目录中,对于我们的虚拟主机,即上传至 /web 文件夹中。

这?#20445;?#24403;您访问 about.htm 的时候,看到的就是 index.html 的内容。

Rewrite 是一个功能强大的平台,要真正的使用它,您可能要花费相当长的时间来学习。如果您使用像 Discuz! 论坛等支持?#26412;?#24577;的系统,而仅仅是需要使用?#26412;?#24577;功能,那么您可以不必学习,直接复制论坛开发者提供的配置文件即可,但要注意配置文件必须命名为 httpd.ini ,并且这个文件必须放在网站的根下。

httpd.ini 修改或者上传后?#35805;?#20250;立即生效,如果长时间不能生效,请登录主机控制面板将网站停止然后再启动。

Rewrite作用

相关条目

?#26412;?#24577; 网址规范化 Apache Mod_rewrite Htaccess

参考资料

  1. 来自“http://www.mmriqm.shop/w/index.php?title=Rewrite&oldid=100943

留言

香港六合彩生肖图