我正在尝试让Apache mod重写在我的本地机器上工作。我正在使用PHP 5运行OSX并且启用了Apache mod重写模块。
我有一个名为localhost / ~Jason / hfh / admin的目录,其中包含基于$ _GET变量调用的各种PHP包含。我想让用户输入(理论上)
localhost/~Jason/hfh/admin/pages
并将该网址保留在地址栏中,而显示的内容为
localhost/~Jason/hfh/admin/?admin=pages
所以
我创建了一个位于/ hfh目录中的.htaccess文件。在里面,我把这个mod重写文本:
RewriteEngine On
RewriteRule ^admin/([^/.]+)/?$ admin/?admin=$1 [L]
当我进入浏览器并输入
时localhost/~Jason/hfh/admin/pages
我收到“问题加载页面”错误,Firefox说“哎呀。由于某种原因,Firefox无法加载此页面。”
任何人都可以帮我解决这个问题吗?我用regex和mod重写这么困难......
答案 0 :(得分:0)
尝试在RewriteRule中明确编写index.php。
RewriteRule ^admin/([^/.]+)/?$ admin/index.php?admin=$1 [L]
您可能还会发现将此指令移动到/ admin /本身中的.htaccess文件是更清晰的组织,从而删除规则中的重复并使规则更容易在以后查找。
答案 1 :(得分:0)
到目前为止答案似乎是:你不能在localhost上使用mod_rewrite。