最近我在我的系统上安装了ubuntu 12.10。安装apache 2.0,php,mysql等。 也通过“sudo a2enmod rewrite”启用url重写。还编辑了配置文件,将AllowOverride none更改为AllowOverride All。
这是我的.htaccess文件
RewriteEngine On # Turn on the rewriting engine^M
RewriteRule ^blog?$ blog.php?p=$1 [NC,L]
RewriteRule ^blog/([a-z0-9A-Z]+)/?$ blog.php?p=$1 [NC,L]
RewriteRule ^appstore?$ appstore.php [NC,L]
RewriteRule ^appstore/([a-z0-9A-Z\--]+)/?$
RewriteRule ^([a-z]+)/?$ index.php?p=$1 [NC,L]
Now ideally, site-url/blog should display the result of blog.php,
site-url/appstore should display the result of appstore.php
和rest all应该显示index.php的结果。 但我没有得到理想的结果。可能是什么问题?
P.S:之前我在Windows 7 Xampp服务器上测试我的应用程序,它运行得很好。它也完全适用于我安装了ubuntu 12.04的Amazon ec2实例。
答案 0 :(得分:1)
您可以启用选项MultiViews
。使用根目录顶部的这一行禁用它.htaccess:
Options -MultiViews