在 $OPENSHIFT_DATA_DIR 上访问上传的文件

Access uploaded file on $OPENSHIFT_DATA_DIR

我上传了一些图片到文件夹 $OPENSHIFT_DATA_DIR/uploaded,但我似乎无法使用以下方法检索这些文件:

$_ENV['$OPENSHIFT_DATA_DIR'].'uploaded/filename.jpg';

错误消息类似于:

The requested URL /var/lib/openshift/xxxxx/app-root/data/thumbnails/filename.jpg was not found on this server.

但是当我通过 ssh 进入我的 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

所以解决方案相当简单:将 .openshift/action_hooks/build 文件设置为 'executable'。然后可以在构建文件中指定指向 $OPENSHIFT_REPO_DIR/src/img/uploaded 的符号链接,然后可以通过调用 $_ENV['$OPENSHIFT_REPO_DIR'].'src/img/uploaded/filename.jpg';

来引用上传的文件