linux系统中
一、检查确认Rewrite模块加载
本文测试是在CentOS 6系统上,路径为:/etc/httpd/conf/httpd.conf
LoadModule rewrite_module modules/mod_rewrite.so
如果前面有注释就去掉即可,重启APACHE。
二、检查确认目录Rewrite打开
Rewrite库加载不代表我们的.htaccess文件就能生效,还需要专门打开指定目录的AllowOveride开关,脚本如下:
■
■Options Indexes FollowSymLinks
■AllowOverride All
■Order allow,deny
■Allow from all
■
其中AllowOverride只能定义在Directory这个Section里,具体用法可参考apache官方说明(下文链接),以上脚本一般放在httpd.conf或/etc/httpd/conf.d/vhost.conf下面,尽量更网站配置的:
定义在一起,方便维护。
windows系统中Apache Rewrite 开启和使用
在Windows下,我们一般使用的是Administrator账号,所以启用这两项非常简单:
在[Apache安装目录]/conf/httpd.conf中找到
#LoadModule rewrite_module modules/mod_rewrite.so
,去掉前面的注释符号#。如果没有这行,请添加。并确认apache安装目录下的modules文件夹中是否有
mod_rewrite.so
这个文件。这样就启用了
Mod Rewrite
功能。
在
[Apache安装目录]/conf/httpd.conf
中找到
Options FollowSymLinks AllowOverride None Order deny,allow Deny from all
把"
AllowOverride None
"改成"
AllowOverride All
",这样所有的文件夹都支持.htaccess了,或者针对指定的文件夹启用.htaccess,可以在
[Apache安装目录]/conf/httpd.conf
中加入
Options Indexes FollowSymLinks AllowOverride All Order allow,deny Allow from all这种做法一般是和虚拟主机配置在一起的,所以大多数会把上述配置代码写入
[Apache安装目录]/conf/extra/httpd-vhost.conf
中,这样比较清晰易于管理。
重启Apache后,就ok了。