2011年5月31日星期二

为什么我.htacess和apache都设置了 可结果还是不能重写url呢

RT,我apache都已经设置了 AllowOverride All和LoadModule rewrite_module modules/mod_rewrite.so的#号都去掉了 为什么还是不能重写url?
-------------------------------------------------------------
最佳答案
第一 AllowOverride All 这个配置和rewrite无关。 第二 你说的另外一个配置修改是加载rewrite module,但不能完全保证加载成功。  建议你按照以下步骤排查: 1、bin/httpd -l 检查一下httpd程序中是否已经默认编译进了rewrite module。如果输出中有mod_rewrite.c,那么注释掉LoadModule rewrite_module modules/mod_rewrite.so这一行,rewrite module已经加载成功。如果没有,进行步骤2. 2、在httpd.conf中增加你的LoadModule行,检查modules/下是否有mod_rewrite.so这个文件(必须是这个文件名),确保文件存在就可以了。 3、上面两步检查之后,就可以确保mod_rewrite真的已经可用了。 4、rewrite生效还需要保证httpd.conf中相关的配置(比如RewriteRule)配置正确。