php - 如何在 PHP 7 中为 Mongodb 连接启用 libmongoc ssl?
问题描述
通过 PHP7 连接到 mongodb 时,出现以下错误:
“SCRAM-SHA-1”身份验证机制需要使用 --enable-ssl 构建的 libmongoc
这可能是由于在 php7 中禁用了 libmongoc SSL:
MongoDB support => enabled
MongoDB extension version => 1.4.4
MongoDB extension stability => stable
libbson bundled version => 1.9.4
libmongoc bundled version => 1.9.4
libmongoc SSL => disabled
libmongoc crypto => disabled
libmongoc SASL => disabled
libmongoc compression => enabled
libmongoc compression snappy => disabled
libmongoc compression zlib => enabled
我该如何启用它?
解决方案
要解决 PHP7 中的此错误,请以超级用户身份执行以下命令:
- 安装所需的依赖项:
yum install git php-devel make gcc openssl-devel
- 从源代码克隆、编译和构建 Mongo PHP 驱动程序:
git 克隆https://github.com/mongodb/mongo-php-driver.git
cd mongo-php-驱动程序/
git子模块更新--init
php化
./configure --with-php-config=/usr/bin/php-config --with-mongodb-ssl=openssl
制作
cp ./modules/mongodb.so /usr/lib64/php/modules/
- 如果还没有,请将 mongodb.so 添加到 php.ini。
“扩展=mongodb.so”
- 重新启动网络服务器以反映更改:
systemctl 重启 httpd.service
推荐阅读
- android - Android ClassNotFoundException android.support.v4.util.ArrayMap
- django - 如何检索当前 Django 用户并将其输入数据库条目
- javascript - 在 Firebase 博客中的 Vanilla Javascript 中将孩子的 ID 设置为父母唯一 ID 的父母
- reactjs - 为什么 Redux reducer 在点击操作后返回 undefined?
- c# - Asp.NET Core 集成测试:POST 方法获取空值
- amazon-web-services - 无法列出 AWS SQS 指标
- installation - Debian 9 TYPO3 8.7.20
- php - 哪个 URL 将使用搜索引擎进行 SEO
- ruby-on-rails - 为什么 DateTime.new 只返回年份?
- javascript - 关于 javascript alert 和 sendRedirect 的问题