1

我想开始使用 Zend Framework 2.0 。我使用 os x lion 和 mamp pro。所以开始我用这个http://framework.zend.com/manual/2.0/en/user-guide/skeleton-application.html都很好,我看到了zend项目索引页面,但是

要测试您的 .htaccess 文件是否正常工作,请导航到http://zf2-tutorial.localhost/1234,您应该会看到:

如果您看到标准的 Apache 404 错误,那么您需要在继续之前修复 .htaccess 的使用。如果您将 IIS 与 URL 重写模块一起使用,请导入以下内容: RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^.*$ index.php [NC,L]

所以我这样做了,将此行导入公用文件夹中的 .htaccess 文件,但没有任何变化,我有 404 错误,

例如,我尝试在 indexController 中创建名为“edit”的操作,但如果我转到 http://zf2-tutorial.localhost/index/edit/ ,则会出现 404 错误。

我必须做什么才能让它工作?????????????????????

4

2 回答 2

1

验证您的 httpd.conf 是否启用了重写模块。通常在 /etc/apache2 中,确保您LoadModule rewrite_module libexec/apache2/mod_rewrite.so在模块部分中有该行。

于 2012-12-11T21:06:09.380 回答
1

如果您有默认的 MAMP 安装,您可以通过单击顶部的 phpinfo 选项卡从 MAMP 开始页面转到 phpinfo。在 phpinfo 页面中,您可以找到 mod_rewrite 是否已加载。只需单击 Cmd + f(在 Mac 上)并键入 mod_rewrite。它应该在“加载的模块”部分。

现在你应该设置你的 VirtualHost。打开/Applications/MAMP/conf/apache/httpd.conf并将其添加到此文件的末尾:

<VirtualHost *:8888>
    ServerName zf2-tutorial.localhost
    DocumentRoot /absolute/path/to/your/projects/zf2-tutorial/public
    SetEnv APPLICATION_ENV "development"
    <Directory /absolute/path/to/your/projects/zf2-tutorial/public>
        DirectoryIndex index.php
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

现在添加这一行

127.0.0.1               zf2-tutorial.localhost localhost

到你的/private/etc/hosts文件。

重新启动 MAMP。

转到http://zf2-tutorial.localhost:8888/后,您应该会看到“欢迎使用 Zend Framework 2”开始页面。转到http://zf2-tutorial.localhost:8888/1234后,您应该会看到404 ZF2 页面,该页面的内容应该是这样的:

zf2 405

如果你看到类似的东西,一切都很正常。这意味着您的 mod_rewrite 正在工作,并且您已被重定向到404 ZF2 页面,该页面插入了默认的 apache“未找到”页面,例如

apache默认404页面

于 2012-12-12T01:01:11.153 回答