WEB开发网
开发学院服务器WEB服务器Apache Apache重写规则的常见应用及实例说明 阅读

Apache重写规则的常见应用及实例说明

 2007-03-10 00:00:00 来源:WEB开发网   
核心提示: 注: “rewriteengine on”为重写引擎开关,如果设为“off”,Apache重写规则的常见应用及实例说明(3),则任何重写规则定义将不被应用,该开关的另一用处就是如果为了临时去掉重写规则,< Directory "/u

注: “rewriteengine on”为重写引擎开关,如果设为“off”,则任何重写规则定义将不被应用,该开关的另一用处就是如果为了临时去掉重写规则,可以将引擎开关设为“off”再重新启动Apache即可,不必将其中的各条重写规则注释掉。

“rewritebase /”的作用是如果在下面的rewriterule定义中被重写后的部分(此处为文件名index.html.en)前面没有“/”,则表明是相对目录,相对于这个rewritebase后面的定义也就是/usr/local/apache/htdocs/index.html.en,否则,如果此处没有“rewritebase /”这一项,则被重写成http://192.168.1.56/usr/local/apache/htdocs/manual/index.html.en,显然是不正确的。

我们也可以不用“rewritebase /”,而是将其改为如下部分。

rewriteengine on
rewriterule ^(.*)$ /index.html.en [R=301]

或者更改为:

rewriteengine on
rewriterule ^(.*)$ http://192.168.1.56/index.html.en [R=301]

(2).htaccess的实现方法

我们将下面的部分放到httpd.conf中。

< Directory "/usr/local/apache/htdocs/manual/"> options Indexes followsymlinks
allowoverride all
< /Directory >

然后将下面的部分放到/usr/local/apache/htdocs/manual/.htaccess中。

rewriteengine on
rewritebase /
rewriterule ^(.*)$ index.html.en [R=301]

注: 对文件.htaccess所做的任何改动不需要重启动Apache。

您还可以利用.htaccess方案将这个manual目录重定向到用户jephe自己的主目录。

上一页  1 2 3 4  下一页

Tags:Apache 重写 规则

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接