我有问题。我正在尝试在共享主机上部署我的zend框架应用程序。在本地,xampp一切正常,但在共享主机上,我收到以下消息: 解析错误:语法错误,第40行的/application/public/index.php中的意外T_OBJECT_OPERATOR。第40行是:$ application-> bootstrap() - > run();.有什么想法吗?
答案 0 :(得分:0)
T_OBJECT_OPERATOR
令牌引用->
。请参阅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的情况下使其工作。也许这rather lenghty tutorial Rob Allen有助于让它发挥作用。一个更短的选择可能是简单地设置
$frontController->setBaseUrl('/path/to/app/index.php')
一样
答案 1 :(得分:0)
这可能是由于PHP的不同版本。也许您的共享主机正在运行旧版本。在大多数系统上,您可以通过创建包含以下内容的页面来获取php版本:
<?php
phpinfo();
?>
您的共享主机可能不允许使用phpinfo功能。我建议首先比较你正在运行的PHP版本,并可能更新你的问题。
答案 2 :(得分:0)
错误500可能是由.htaccess文件中的错误引起的。是否启用了mod_rewrite?