这是一个纯粹的Bluemix问题!
我已经在本地主机上顺利运行代码但是当我将它迁移到Bluemix时,我的数据库连接失败了.检查日志我发现问题“调用未定义的函数mysqli_init()”HTTP响应500.我发现该扩展已被禁用以使其变小并找到一些有关它的详细信息:Buildpack options.
不幸的是我尝试过但失败了.也许我误解了解决方案.
任何帮助将不胜感激.
编辑:
bgconfig – > bp-config解决了“未定义的函数错误”
似乎已经添加了一些扩展,但并非全部. “致命错误:在第15行的/home/vcap/app/htdocs/db_config.PHP中找不到类’PDO’”
但是我在options.json中添加了PDO扩展.
但仍然得到同样的错误……
$db = new PDO('MysqL:host=us-cdbr-iron-east-02.cleardb.net;dbname=ad_dae231843a962ca', $username, $password);}
在试试和抓住当然.
任何线索?
解决方法:
您发布的options.json文件是正确的.但是它位于错误的目录中,它应该位于名为.bp-config /的文件夹中.重命名该文件夹并将您的应用程序重新注册回Bluemix.
还尝试将pdo_MysqL添加到.bp-config / options.json.
我刚刚使用PDO驱动程序针对数据库测试了一些代码并且工作正常.我的.bp-config / options.json文件如下.
{
"PHP_EXTENSIONS": ["pdo", "MysqLi", "pdo_MysqL", "MysqL"]
}
我会用MysqL桌面客户端仔细检查您对数据库的访问.它看起来像您的连接信息的问题.
我有一个example app用于测试与PDO的连接信息.