如何在 Bluemix php 中部署自定义骨架应用程序
Posted
技术标签:
【中文标题】如何在 Bluemix php 中部署自定义骨架应用程序【英文标题】:how to deploy a custom skeleton application in Bluemix php 【发布时间】:2015-12-19 13:50:57 【问题描述】:在 Bluemix 中,如果我从 php 模板开始创建应用程序,则 DocumentRoot 设置为:
/htdocs
.
我实际上想要一个这样的目录结构:
/htdocs
/public_html
index.php
/myCode
myPhpClass.php
使用 httpd.conf DocumentRoot="$HOME/htdocs/public_html"。
所以我尝试从本地 myAppName 目录推送这个社区 buildpack https://github.com/cloudfoundry/php-buildpack.git:
/var
/www
/myAppName
/public_html
index.php
/myCode
myOhoClass.php
/.bp-config
options.json
使用cf:
[... myAppName]# cf push -s cflinuxfs2 -m 128M -b https://github.com/cloudfoundry/php-buildpack.git myAppName
options.json 文件在哪里:
"WEBDIR": "htdocs/public_html"
但我最终在 Bluemix 中得到的是:
/htdocs
/public_html
/public_html
index.php
/myCode
myPhpClass.php
有没有办法在 Bluemix 中为 apache httpd/php 应用程序提供自定义目录结构?
【问题讨论】:
【参考方案1】:您的.bp-config/options.json
文件有点错误。应该是这样的。
"WEBDIR": "public_html"
我自己尝试了一个 PHP 应用程序,效果很好。
cf push php-test-jbs -b https://github.com/cloudfoundry/php-buildpack.git -s cflinuxfs2
另外要部署示例点击以下。
或转到Github project 查看完整示例。
【讨论】:
抱歉,我的问题可能不清楚,但这正是我所做的。问题不在于未部署选项,而是我不知道如何使用选项来创建所需的骨架应用程序。 创建此结构:/public_html/index.php 不是所需的结构:/htdocs/public_html/index.php(DocumentRoot 指向 public_html)。 我想在 Bluemix 中复制我的开发服务器目录树:Apache 服务文件放在 [/var/www]/htdocs/public_html/ 中,而 php 类和其他我不想要的东西在公共目录中放置在 [/var/www]/htdocs/myCode/ 中(方括号 [ ] 中包含的部分只是在本地服务器中,而 Bluemix 应该有不同的部分)。 我认为这是 php 应用程序中流行的 dirs 结构。谢谢。 @marcoe 不是我在答案中发布的吗?见上图。以上是关于如何在 Bluemix php 中部署自定义骨架应用程序的主要内容,如果未能解决你的问题,请参考以下文章
如何将内部 MobileFirst 混合应用程序部署到专用的 Bluemix 环境?
解决了好几个软件的构建问题,在解决部署问题,bluemix部署