【问题标题】:Zend framework on shared hosting共享主机上的 Zend 框架
【发布时间】:2009-11-14 21:14:05
【问题描述】:

我有问题。我正在尝试在共享主机上部署我的 zend 框架应用程序。在本地,使用 xampp 一切正常,但在共享主机上我收到以下消息: 解析错误:语法错误,第 40 行 /application/public/index.php 中的意外 T_OBJECT_OPERATOR。第 40 行是:$application->bootstrap()->run();。有什么想法吗?

【问题讨论】:

    标签: zend-framework


    【解决方案1】:

    这可能是由于 PHP 的不同版本。也许您的共享主机正在运行旧版本。在大多数系统上,您可以通过创建包含以下内容的页面来获取 php 版本:

    <?php
    phpinfo();
    ?>
    

    您的共享主机可能不允许使用 phpinfo 功能。我建议首先比较您运行的 PHP 版本,并可能更新您的问题。

    【讨论】:

      【解决方案2】:

      错误 500 可能是由 .htaccess 文件中的错误引起的。 mod_rewrite 开启了吗?

      【讨论】:

      • 感谢您的回复。如何检查 mod_rewrite 是否启用?我试过 phpinfo();但没有任何关于 apache 配置的信息……非常感谢!
      【解决方案3】:

      T_OBJECT_OPERATOR 令牌指的是-&gt;。请参阅 PHP 手册中的 List of Parser Tokens。共享主机的 PHP 版本是多少?如果它仍在运行 PHP4,您将无法在其上运行 ZF(并且您应该尽快更改主机)。如果它运行的是 PHP5,请确保它是 PHP 5.2.4(或更高版本),并请告诉我们您使用的是哪个版本的 ZF。

      编辑 2 错误通常记录到服务器日志中。由于您在共享主机上,因此您可能无法查看它。您可以做的是在文档根目录中找到隐藏的 .htaccess 文件,例如ZF 的公用文件夹并逐行取消注释里面的指令。如果错误消失了,那么您可能会知道出了什么问题。可能是mod_rewrite。您也可以尝试使用apache_get_modules 来找出启用了哪些模块。不过话说回来,你确定它是 Apache 吗?

      编辑 3 不知道如何在没有 mod_rewrite 的情况下让它工作。也许Rob Allenrather lenghty tutorial 将有助于使其正常工作。一个更短的选择可能是简单地设置

      $frontController->setBaseUrl('/path/to/app/index.php')
      

      suggested in the ZF Forum一样

      【讨论】:

        猜你喜欢
        • 2015-04-21
        • 1970-01-01
        • 1970-01-01
        • 2017-05-23
        • 2010-11-10
        • 2015-01-08
        • 2011-07-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多