PHP的数据库环境变量似乎调用失败
Issue #112
resolved
昨天发现的问题:
以前是可以的,但是改用具体的值(右边)之后,就正常了:
但是昨天是用我修改版(for Chinese users)的一个新的wordpress,今天用以前我成功deploy的一个wordpress放上去,还是出现数据库问题:
http://wp2-cnpaas1.app.cnpaas.io
Comments (6)
-
-
reporter 我已经找到问题所在的!
修改成这样:
define('DB_NAME', getenv('OPENSHIFT_APP_NAME')); define('DB_USER', getenv('OPENSHIFT_MYSQL_DB_USERNAME')); define('DB_PASSWORD', getenv('OPENSHIFT_MYSQL_DB_PASSWORD')); define('DB_HOST', getenv('OPENSHIFT_MYSQL_DB_HOST')); define('DB_CHARSET', 'utf8'); define('DB_COLLATE', '');
关键在于 DB_NAME ,因为 CNPaaS 没有给出 DB_NAME ,而根据openshift的 Database Environment Variables ,我之前将它放照数据库的其他ENV写成了:
getenv('OPENSHIFT_MYSQL_DB_NAME')
于是出错,但是我发现如果这项和创建应用时填写的name一致的话(主要是我不知道该设为什么的情况下尝试填了应用的name,误打误撞),是可以成功的。
于是根据openshift的ENV文档,用上面贴的代码可以成功。
-
reporter - changed status to resolved
其实主要问题是DB NAME,但是我尝试用APP NAME代替DB NAME,jsut work.
-
你在一个新应用内用
OPENSHIFT_MYSQL_DB_NAME
还是不行吗?是要昨天修服后建的新应用。 -
reporter 我不是新建应用。我只是重新push旧应用。我试试新建应用吧。
-
reporter 是可以的。新的环境变量设定是work的。
- Log in to comment
你再放一次,還有這問題嗎?這問題和
#111我認為是同一個原因。