我使用php openshift项目构建了一个站点,并通过http works fine访问了根目录。但是,所有根目录都给我找不到404,如下所示:http://test.toppagedesign.com/sites/
我使用ssh进行了检查,/app-root/repo/sites
和app-deployments/current/repo/sites/
都存在。
修改
添加了一个名为php
的目录,现在我的所有内容都有503个错误......
编辑2
我删除了php目录,现在503错误消失了。但是,我仍然会在子目录中收到404错误。
这是我的目录树:http://pastebin.com/hzPCsCua
我确实使用git来部署我的项目。
答案 0 :(得分:1)
php是您可以使用的备用文档根之一,请参阅此处的March Release博客文章(https://www.openshift.com/blogs/openshift-online-march-2014-release-blog)
对于不起作用的子目录,你可以ssh到你的服务器并使用"树"命令发布项目的目录/文件结构?您是否还使用Git直接在服务器上部署项目或编辑文件?
你需要在你想要工作的任何目录中有一个index.php或index.html文件,如app-domain.rhcloud.com/sites,如果你只有子目录,它怎么知道要显示什么?此外,出于安全原因,未启用索引(显示文件夹内容),我相信无法启用它。
答案 1 :(得分:1)
这听起来可能是您如何提供静态内容的问题。
我最近为OpenShift创建了一个new sample app,其中包括:
static
folder .htaccess
file(用于投放生产中的资产)php
's local server to handle the static content (in your dev environments) 如果您的开发环境中有PHP-5.4(或更高版本),您可以在本地为项目提供服务:
php -S localhost:8080 -t static app.php
对于在同一基础上构建的更高级的项目,请查看this PHP+MongoDB mapping example。我也写了a blog post with some notes on my process for composing that app。
希望这些例子有所帮助!