【问题标题】:Hiphop error when running program had compiled运行程序已编译时出现 Hiphop 错误
【发布时间】:2012-06-24 09:09:24
【问题描述】:

我在使用 Hiphop 编译一个简单的 yii 应用时成功了(使用 cmd yiic webapp demo 生成)。

hphp test.php --keep-tempdir=1 --log=3 --include-path="../yii/framework"

编译处理没有任何错误或警告。我可以用 cmd 编译程序启动服务器:

sudo /tmp/hphp_8AcATe/program -m server -p 8008 -v "Server.SourceRoot=pwd" \ -v "Server.DefaultDocument=index.php" -v "Server.EnableStaticContentFromDisk=true" -c $HPHP_HOME/bin/mime.hdf (此 cmd 引用自 here - 示例:编译 WordPress)

之后,我通过浏览器通过http://127.0.0.1:8008访问,然后遇到错误:

更新(我在下面的路径中有混淆并已修复)

HipHop 注意:尝试调用 /var/www/demo/../yii/framework/yii.php 但找不到文件。在第 12 行的 index.php 中

HipHop 致命错误:所需文件不存在:/var/www/demo/../yii/framework/yii.php in index.php on line 12

这里是第 12 行,index.php:

4.  $yii=dirname(__FILE__).'/../yii/framework/yii.php';
...
12. require_once($yii);

更新

我尝试使用 realpath() 作为@prodigitalson 的提示,但在控制台中,程序仍然输出相同的内容:

所需文件不存在:第 12 行 index.php 中的 /var/www/demo/yii/framework/yii.php

为避免出现相对路径混淆的情况,我将编译后的程序文件夹复制到 /var/www(带有 yii lib 的根目录:/var/www/yii/framework),但没有任何变化:(

有没有人和我一样遇到这个错误?如何修复它们?感谢您的帮助!

【问题讨论】:

  • 您可以发布 index.php 的第 12 行,以便我们查看您的要求声明吗?看起来路径解析不正确。
  • @prodigitalson 我已经用第 12 行的代码更新了我的问题。
  • 那么文件/var/www/demo/../yii/framework/yii.php 存在吗?
  • @zerkms 当然,我和 Yii 合作过一段时间了。
  • @Davuz:不要使用未解析的相对路径...将其包装在realpath$yii = realpath(dirname(__FILE__).'/../yii/framework/yii.php');

标签: php compiler-construction yii runtime-error hiphop


【解决方案1】:

'/../yii/framework/yii.php' 中删除'/..'

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多