【问题标题】:zend framework under document root in subdir子目录中文档根目录下的zend框架
【发布时间】:2010-08-02 15:18:57
【问题描述】:

我使用 Zend Framework 开发了一个应用程序,现在我希望能够将该应用程序放置在 Documentroot 的子目录中。 例如http://www.example.com/myapp/

我阅读了很多 Docu 文档,但总而言之,这些解决方案都不符合我的需求。有没有一种简单的方法来做 subdir 的事情,而无需将具体路径添加到任何生成页面的文件中。

网络中有一些示例,其中在应用程序环境中设置了 basePath,因此在每个“表单”创建之前都有一个方法调用,该方法在链接之前添加路径。

$form->setAction($this->_request->getBaseUrl() . $this->_helper->url('sign'));

来自:http://johnmee.com/2008/11/zend-framework-quickstart-tutorial-deploy-to-a-subdirectory-instead-of-web-root/

但这仅适用于小示例,我有大量的表单、大量的视图和大量的脚本。我不敢相信这(让我们称之为 hack :))是唯一的解决方案。

有什么想法吗?

【问题讨论】:

    标签: zend-framework path document-root


    【解决方案1】:

    您不必做任何特别的事情。请参阅我在 http://akrabat.com/Zend-framework-tutorial 的教程,该教程完全在子目录中开发。

    【讨论】:

    • 哦,好吧,但你总是引用完整的路径 zf-tutorial/public,我故意不希望这样。我只想要 example.com/app/myaction、example.com/app/myaction2 等等,所以公共路径是透明的。您也在使用 ->getBaseUrld()-Thing,我可能没有其他办法。顺便说一句,你的教程很棒。前段时间帮了我很多。提前谢谢
    • 啊!在这种情况下,将 index.PHP 移动到我的应用程序目录...有关一些想法,请参阅 akrabat.com/zend-framework/zend-framework-on-a-shared-host
    【解决方案2】:

    正如他们在网页上所说:

    听说上一期是 lodged 有缺陷,没有必要 从“1.7”及更高版本开始。这 helper->url 将在以后添加 baseUrl 到它的结果。

    所以你应该没问题。你真的已经在每个表单上都使用了 $form->setAction() 方法了吗?因为如果你将它与 url helper 结合使用,baseUrl 将已经包含在内。

    【讨论】:

    • 我必须承认我做这件事还没到。但我会试一试。谢谢
    猜你喜欢
    • 1970-01-01
    • 2012-01-10
    • 1970-01-01
    • 2021-12-19
    • 1970-01-01
    • 1970-01-01
    • 2021-12-05
    • 2014-04-07
    • 1970-01-01
    相关资源
    最近更新 更多