Zend Framework 2真实世界应用程序的文件结构

5

我刚开始使用ZF2,对Zend骨架应用程序感到非常困惑。

当前情况下URL的样子是:

http://localhost/zf2/public/

对于一个名为Application的模块,它看起来像这样:

http://localhost/zf2/public/Application/

行动放在模块名称后面。 我想创建一个带有管理员面板用户面板的CMS。 这就是为什么我希望我的用户URL像这样:

http://localhost/zf2

并且对于管理员而言,如下所示:
http://localhost/zf2/admin/Module Name/Actions

所以,我的问题是,我应该如何创建像这样的URL?

你尝试过使用路由器吗?不知道zf2,但在zf1中可以通过zend路由器实现。 - codisfy
1
http://framework.zend.com/manual/2.1/en/modules/zend.mvc.routing.html 提供了基础知识。 - RockyFord
1个回答

1
你的url示例看起来混淆了public目录和控制器路由。通常不应该有这样的url:
http://localhost/zf2/public/

相反,你应该使用虚拟主机。有许多方法可以做到这一点,但通常要么使用自定义端口,要么使用自定义主机条目(如果您想要命名的虚拟主机)。然后,您到公共网址将看起来像以下两个选项之一:

http://localhost:9000/

or

http://myapp.local/

如果您正在使用PHP 5.4,在开发环境中启动主机的最简单方法是使用PHP 5.4内置服务器。您可以从项目根目录在命令行上启动它(这将使public目录成为本地主机上端口9000的临时Web服务器的Web根目录)。
php -S localhost:9000 -t public

一旦您的Web服务器配置完成,Skeleton应用程序将自动解释您的URL路由(默认情况下)如下:
http://localhost:9000/some-module/some-controller/some-action

如果您想在Skeleton应用程序中将完整的字面路径放入IndexController上的默认indexAction中,则如下所示:
http://localhost:9000/application/index/index

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接