0

我使用创建了一个新控制器

zf Create Controller About 

但是当我尝试导航到路径时(http://mysite.com/about)我得到一个 404。下面是详细信息

站点设置在 C:\apache\htdocs\mysite.com\public

我已经修改了 vhosts 文件(C:\apache\conf\extra\httpd-vhosts.conf)来添加虚拟主机,比如

<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.localhost
    DocumentRoot "C:/apache/htdocs/mysite.com/public"
    ServerName mysite.com
    ServerAlias mysite.com
    ErrorLog "logs/mysite-error.log"
    CustomLog "logs/mysite-access.log" common
</VirtualHost>

还添加了到 Windows 主机文件的映射,例如 127.0.0.1 mysite.com

这是我来自公共文件夹的 .htaccess 文件

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

我可以访问http://mysite.com,但是当我尝试访问http://mysite.com/about时,我得到了 404。

在我的 httpd.conf 我有以下

<Directory />
Options FollowSymLinks
AllowOverride All
Order deny,allow
Deny from all
</Directory>

<Directory "C:/apache/htdocs">
    Options Indexes FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

我缺少什么来完成这项工作?

4

1 回答 1

0

感谢您发布如此详细的配置信息。

您需要更改AllowOverride None为块AllowOverride All<Directory "C:/apache/htdocs">

当 AllowOverride 为 时None,这意味着 .htaccess 文件未被处理,因此您的 URL 重写到 Zend 应用程序的前端控制器不会发生。

另请参阅:如何在 zend 框架中配置 htaccess

于 2012-04-24T01:43:44.800 回答