Htaccess导致index.php下载


htaccess causing index.php to download

我正在一个网站上工作,它依赖于以下htaccess文件,通过重定向到index.php来创建一个虚拟目录结构,每当指定的url在系统上不存在时。

AddHandler php5-script .php
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?p=$1 [L,QSA]

这似乎在客户端的现有服务器上工作得很好。它无形地将domain.com/checkout重定向到domain.com/index.php?p=checkout

我的问题是,在我的本地开发环境中,这会导致任何不存在的url,如domain.com/checkout,甚至根域名。com下载index.php

如果我尝试加载存在于网站(如domain.com/index.php)中的特定文件,则它会解析并在浏览器中正确显示。

如果有关系,我的开发环境在Zend Server Community Edition上配置了虚拟主机。

我假设您已经在开发服务器中为所有具有*.php扩展名的文件配置了PHP。这意味着在.htaccess文件中再次执行此操作不仅没有必要,而且可能会取消服务器的配置(正如它实际所做的那样)。因此,您需要删除这一行:

AddHandler php5-script .php

问题是为什么它首先在那里。我希望在默认情况下配置任何支持php的托管服务:-?