我正在用PHP为OpenShift应用程序编写,当我试图需要另一个PHP脚本时,遇到了一个致命错误。我尝试过许多文件路径的排列,但都没有解决问题。
PHP文件似乎存在:我可以SSH到我的应用程序中,并在/var/lib/openshift/5357ba345973cac7c400021d/app-root/repo/lib/dothis.php
中导航到它
我当前的PHP代码:
require_once ($_ENV['OPENSHIFT_REPO_DIR'] . 'lib/dothis.php');
以前未成功的尝试:
1 set_include_path(get_include_path() . PATH_SEPARATOR . $_ENV['OPENSHIFT_REPO_DIR']);
require_once ('lib/dothis.php');
2 require_once ($_SERVER['DOCUMENT_ROOT'] . '/lib/dothis.php');
3 include ($_SERVER['DOCUMENT_ROOT'] . '/lib/dothis.php');
4 require ($_SERVER['DOCUMENT_ROOT'] . 'lib/dothis.php');
5 require (realpath(dirname(__FILE__)) . '/lib/dothis.php');
6 require (dirname(__FILE__) . '/lib/dothis.php');
对于我当前的php代码,rhc tail
日志给出了以下内容:
〔2014年4月25日星期五12:41:22〕〔error〕〔client 127.3.140.1〕PHP致命错误:requireonce():无法打开必需的'/var/lib/openshift/5357ba345973 cac7c400021d/app root/runtime/repo/lib/dothis.PHP'include_path=':/var/lib/openshift5357ba345973cac7c400021d/app-root/runtime/repo/lib:/var/lib/Openshift5357Ba345973ca7c400021d:app-root/repo/libs:/var/lib/openshift/53577ba345973 cac7c400021 d/app-rroot/runtime/repo/librarys:/var/lib/openshift5357ca345973ca 7ba345973cac7c4000第221行的/var/lib/openshift/5357ba34573cac7c400021d/app-root/runtime/repo/process.php中的21d/app-openshift5357ba345973cac7c4000 21d/php/phplib/pear/pear/pear')
请交叉检查您有问题的文件位置!
OPENSHIFT_REPO_DIR指$OPENSHIPT_HOMEDIR/app root/运行时/reo/
相反,您可以使用$OPENSHIFT_HOMEDIR并添加路径的其余部分!!
参考:https://www.openshift.com/developers/openshift-environment-variables