我在 Openshift 上创建了一个 php 应用程序。然后我将 MySQL 数据库添加到我的应用程序中。之后我可以使用 env
命令在 SSH shell 中查看与数据库相关的变量。
但是,当我尝试使用环境变量来设置数据库连接时,它不会将它们重新运行到我的 php 代码。举个例子:
<?php
echo('App: '.$_ENV["OPENSHIFT_APP_NAME"].'<br/>');
echo('Host: '.$_ENV["OPENSHIFT_MYSQL_DB_HOST"]);
OPENSHIFT_APP_NAME
正确返回应用程序名称,但 OPENSHIFT_MYSQL_DB_HOST
为空且主机信息不可用。
我还在控制台中重新启动了我的应用程序。
作为通知,我使用 WinScp 直接上传我的应用程序,我不确定 php 应用程序的部署是否需要更多或更少的东西(比如一些 require
东西)?
更新:
当我检查 phpMyAdmin 代码时,我看到它有一个文件“conf.d/passenv.conf”,其语法如下:
PassEnv OPENSHIFT_MYSQL_DB_PORT
希望能帮助解决我的问题。
最佳答案
您需要停止并启动(而不是重新启动)您的应用程序,因为您在创建应用程序后添加了 MySQL。 使用 rhc app stop 和 rhc app start 命令。
关于php - Openshift:PHP 中未设置数据库环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38475568/