PHP笔记网

革命尚未成功,同志仍须努力下载JDK17

作者:Albert.Wen  添加时间:2012-08-17 09:37:35  修改时间:2024-05-20 13:23:58  分类:Apache/Nginx  编辑

今天在本地调试Discuz 7.2的时候,发现URL没法进行伪静态。我以为是.htaccess没设置对,反复修改还是不行。我突然想到,是不是我的apache本来就不支持.htaccess呢。于是我搜索起来。

有网站介绍说:打开httpd.conf文件用文本编辑器打开后,查找

<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>

改为:

<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>

可是我在我的httpd.conf文件里根本没有发现Options FollowSymLinks 之类的东西。我只好将

<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>

手动添加到httpd.conf文件里,然后重启Apache服务器,问题得到解决。

如 果你也遇到Apache还不支持.htaccess的情况,使用我上面的这个情况不行的话,那就在httpd.conf文件里搜索LoadModule rewrite_module modules/mod_rewrite.so,如果前面有#符号,就去掉。保存,然后重启Apache。

首 先去掉LoadModule rewrite_module modules/mod_rewrite.so前面的注释符号#,然后把所有的AllowOverride None都改成AllowOverride All才行。实际上,我在调试的时候并没有把所有的AllowOverride None都改成AllowOverride All,如果我全部修改了反而还出错。可能情况有所不同吧。

【总结】当你的Apache不支持.htaccess时,解决方法如下:

一,在你的Apache安装文件夹conf里找到httpd.conf文件。这个文件相当重要,而且经常使用。配置Apache服务器是必须搞懂的。

二,搜索LoadModule rewrite_module modules/mod_rewrite.so 如果前面有注释符号#,请去掉。

三,搜索Options FollowSymLinks,然后将它下面的AllowOverride None 修改为AllowOverride All;如果没有搜索到,那就手动在httpd.conf里添加

<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>

四,保存。重启apache服务器。记得,一定要重启。很多时候我们设置后,马上刷新网页,并没有效果,是因为没有重启服务器。这个很容易忽略,也是我们粗心的地方。

五,如果你还不行,那就将httpd.conf文件里的所有AllowOverride None都改成AllowOverride All试试。保存,重启服务器再试试。