日期:2014-05-16  浏览次数:20635 次

Unix/Linux上面mod_rewrite模块的使用

今天的目标是要使用apache的mod_rewrite的模块来达到是以前的不使用的网址跳转到一个新的网址,如此简单的功能在网上寻找了N多文章来解决,结果没有一个能成功的,注:都是中文的,不知道是我笨呢,还是领悟能力差,或是其他的....

鼓捣了好久都是不行,去吃饭,回来再查了一下,找到英文的文章,里面介绍了很多Unix上面的技巧,其中就包括Rewrite这样的功能,从中寻找了一番,找到了不少需要的功能,又下载到了一篇非常有用的sheet,在附件中了,大家可以看一下,老外做得东西,确实是非常的有帮助,简单明了。

?

下面是我的解决方案,经过自身的测试,我要将以前的网址testopia.aaaaa.org跳转到testopia.bbbb.org,并且后面的参数仍然要跟过去,可以继续使用。

?

在http.conf的testopia.aaaaa.org的相应的目录下面加入如下代码:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^testopia\.aaaaaa\.org$ [NC]
RewriteRule ^(.*)$?http://testopia.bbbb.org/$1 ?[R=301,L]

在该文件的最后加入如下代码可以达到记录rewrite日志的作用:
RewriteLog /var/apache2/2.2/logs/mod_rewrite.log
RewriteLogLevel 5

具体的关于每个选项什么作用可以查看相应的cheet文件。