最近因为工作需要, 要用apache的rewrite_mod模块来改写url中的一部分. 查找了一些资料后, 记录在此. 共享!
1 生成rewrite_module 模块: (如果在安装时有rewrite选项, 则不用执行此步骤.)
下面来加载编译mod_rewrite.so这个模块。
#cd /soft/httpd-2.0.59/modules/mappers
#/opt/apache2/bin/apxs -c mod_rewrite.c
#gcc -shared -o mod_rewrite.so mod_rewrite.o
#/opt/apache2/bin/apxs -i -A -n rewrite mod_rewrite.so
2 这时应该会提示你已经在apache的module目录产生了一个mod_rewrite.so文件,并更改了conf/http.conf文件.
3 配置http.conf文件: (正则表达式部分视情况来更改)
LoadModule rewrite_module modules/mod_rewrite.so
RewriteEngine on
RewriteLog "logs/rewrite.log"
RewriteLogLevel 9
#rewriterule ^(.*)Redirect=http:/([^\/]+)/(.*) $1Redirect=http://$2/$3 [PT]
rewriterule ^(.*)REFERER([^&]+)&(.*) $1REFERER$2\%26$3 [PT]