常见问题

环境:

系统 Windows
Apache 2.2

加载Rewrite模块:

在conf目录下httpd.conf中找到

LoadModule rewrite_module modules/mod_rewrite.so

这句,去掉前边的注释符号“#”,或添加这句。

允许在任何目录中使用“.htaccess”文件,将“AllowOverride”改成“All”(默认为“None”):

# AllowOverride controls what directives may be placed in .htaccess files.
# It can be “All”, “None”, or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
AllowOverride All

这样就可以使用了,如果配置还是不行可以接着看下面

 

2.配置文件是不是有问题

 

1. 首先检查是否有开启rewrite,检查方法可以(www.111cn.net)通过phpinfo()来查看“Loaded Modules”中是否有“mod_rewrite”,如下图。

 

 

. 检查伪静态规则的文件名是否正确,是不是为“.htaccess”,这个词容易写错,所以要注意这一点。

 

3. 如果是这样的访问形式:http://localhost/daixiaorui/ ,就不要加“RewriteBase /”

这句话了,“RewriteBase /”表示定义根路径。这个时候要么注释这句话,要么改成“RewriteBase /daixiaorui/”。


. 再就是检查写法规则是否正确,下面举一个首页和文章页的例子,可供参考:


RewriteEngine On


#RewriteBase /


RewriteRule ^index\.html$    index\.php [L]


RewriteRule ^read\/([0-9]+)\.html$  read.php?id=$1  [QSA,L]


如果还是不行,那就请看看你的web服务器是不是apache了。

海西数据 http://www.xmwzidc.com