祥磊部落

A responsible theme for WordPress

URL RewriteRule - httpd.conf和.htaccess中的不同点

相信熟悉Apahce的人一定知道URL Rewrite。Apache的mod_rewrite模块,可以帮助人们构造出各种各样美化后的URL。在Apache中使用URL Rewrite,可以有多种方式:一种是直接在httpd.conf中添加相应rewriterule(重写规则),另一种是在网站根目录下的.htaccess中添加rewriterule(重写规则)。但是,需要注意的是,在这两个文件中添加到URL重写规则略有不同。而这些不同,对于不熟悉的人来说,很可能会困扰许久。

在Httpd.conf中:

(1)Request URI的开头必须以斜线开始;

(2)在寻找Cache文件的时候,必须在开头加上斜线;

(3)在使用-f或者!-f的时候,必须在开头加上斜线。

在.htaccess中,情况完全相反:

(1)Request URI的开头不能有斜线;

(2)在寻找Cache文件的时候,不能在开头加上斜线;

(3)在使用-f或者!-f的时候,不能在开头加上斜线。

简单而言,就是在httpd.conf中,重写前后的URL在使用绝对路径时需要添加斜线“/”,表示从网站根目录开始;而在.htaccess中,则不需要。以下两个简单的例子:

httpd.conf

 

.htaccess

 

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据