我将一些图片上传到$OPENSHIFT_DATA_DIR/uploaded
文件夹,但我似乎无法使用以下文件检索这些文件:
$_ENV['$OPENSHIFT_DATA_DIR'].'uploaded/filename.jpg';
错误消息类似于:
在此服务器上找不到请求的网址/var/lib/openshift/xxxxx/app-root/data/thumbnails/filename.jpg。
但是,当我进入我的openshift应用程序时, $OPENSHIFT_DATA_DIR/uploaded/
是否有特定命令从$OPENSHIFT_DATA_DIR
检索信息?
*****编辑*****
所以我在网上进行了一些进一步的研究,显然$OPENSHIFT_DATA_DIR
文件夹无法访问。解决方法之一是创建符号链接。
然而,另一个问题出现了:我无法对符号链接$OPENSHIFT_DATA_DIR/uploaded
和$OPENSHIFT_REPO_DIR/src/img/uploaded
进行符号链接。我使用的命令是:
ln -s ${OPENSHIFT_DATA_DIR}uploaded ${OPENSHIFT_REPO_DIR}src/img/uploaded
但是当我使用readlink
检查它时:
readlink -f ${OPENSHIFT_REPO_DIR}src/img/uploaded
它仍会显示${OPENSHIFT_REPO_DIR}src/img/uploaded
文件夹,而不是$OPENSHIFT_DATA_DIR/uploaded
答案 0 :(得分:1)
因此解决方案非常简单:将.openshift/action_hooks/build
文件设置为'可执行文件。然后可以在构建文件中指定$OPENSHIFT_REPO_DIR/src/img/uploaded
的符号链接,然后可以通过调用$_ENV['$OPENSHIFT_REPO_DIR'].'src/img/uploaded/filename.jpg';
来引用上传的文件