找不到 openshift 项目中的子目录



>我使用php openshift项目构建了一个站点,通过http访问根目录工作正常。但是,所有根目录都给我一个 404 找不到,就像这样:http://test.toppagedesign.com/sites/

我用ssh检查了一下,/app-root/repo/sitesapp-deployments/current/repo/sites/都存在。

编辑添加了一个名为 php 的目录,现在我的所有内容都有 503 个错误......

编辑 2

我删除了php目录,现在503错误消失了。但是,我仍然收到子目录的 404 错误。

这是我的目录树:http://pastebin.com/hzPCsCua

我确实使用 git 来部署我的项目。

php 是您可以使用的替代文档根目录之一,请参阅此处的 March Release 博客文章(https://www.openshift.com/blogs/openshift-online-march-2014-release-blog)

至于子目录不起作用,你能ssh到你的服务器并使用"tree"命令来发布项目的目录/文件结构吗? 此外,您是否使用 Git 直接在服务器上部署项目或编辑文件?

您需要在您想要像 app-domain.rhcloud.com/sites 一样工作的任何目录中有一个索引.php或 index.html 文件,如果您只有子目录,它怎么知道要显示什么? 此外,出于安全原因,未启用索引(显示文件夹内容),我相信没有办法启用它。

这听起来可能是您提供静态内容的方式存在问题。

我最近为 OpenShift 创建了一个新的示例应用程序,其中包括:

  1. 基本static文件夹
  2. .htaccess文件(用于在生产中提供资产)
  3. 支持使用 php 的本地服务器来处理静态内容(在开发环境中)
  4. Composer 和 Silex - 大多数新 PHP 应用程序的绝佳起点

如果您有 PHP-5.4(或更高版本),则可以在本地提供项目,

该版本可在开发环境中使用:
php -S localhost:8080 -t static app.php

对于在同一基础上构建的更高级的项目,请查看此 PHP+MongoDB 映射示例。 我写了一篇博客文章,其中包含一些关于我编写该应用程序的过程的注释。

希望这些例子有帮助!

最新更新