在特定 PHP 版本上安裝 MongoDB 擴展
我有一個 Debian Web 伺服器,我在 ISPConfig 3 周圍安裝了 Apache/Mysql/PHP5。我手動安裝了一個附加的 PHP 版本(PHP 7.0.5),以便在 PHP 5 上擁有一個網站,在 PHP 7 上擁有一個網站,並且一切正常。(我使用以下教程安裝 PHP 7:https ://www.howtoforge.com/tutorial/how-to-install-php-7-on-debian/ )
現在我想安裝新的 MongoDB 驅動程序(PHP 7 友好),以便它可以與我的 PHP 7 網站一起使用(我的舊版驅動程序適用於 PHP 5)。
為此,我使用
pecl install mongodb
並添加extension=mongodb.so
到 PHP 7ini
文件中。安裝正常,但是當我檢查 PHP 7 上的擴展狀態時,它告訴我擴展未載入。原因似乎是安裝在 PHP 5 版本而不是 PHP 7 上的 MongoDB 驅動程序。
如何告訴 MongoDB 驅動程序使用 PECL 安裝在 PHP 7 版本上(或者可能是另一種安裝方式)?
當您在
pecl
沒有完整路徑的情況下呼叫二進製文件時,您的 shell 可能會執行/usr/bin/pecl
,而這又可能是由 PHP5 從 .deb 包安裝的。您需要執行pecl
隨 PHP7 安裝的二進製文件。它放在哪裡只能由您確定,因為路徑是在編譯時配置的。嘗試/usr/local/bin/pecl
和$PREFIX/bin/pecl
($PREFIX 是另一個配置選項)。
只需使用:sudo apt-get install php7.0-mongodb 檢查 php 資訊: https ://www.php.net/manual/es/mongodb.installation.pecl.php
問候,伙計。