所以我遇到了一些問題,我只是希望我能理解。有一個乾淨的安裝PHP的乾淨的Centos機器。它也安裝了mongoDB驅動程序。當通過瀏覽器訪問網絡應用程序時,它一直抱怨mongo客戶端不存在。遵循所有安裝程序,php.ini
包含extension=mongo.so
,並重新啓動httpd。 PHP info()
不包含Mongo conf。最終工作的是將mongo.ini
文件添加到/etc/php.d
目錄,並將其寫入extension=mongo.so
。PHP - - ini「(none)」,不加載擴展
我得到一個偷偷摸摸的懷疑php.ini
未被正確加載,但我不明白爲什麼。我之所以這樣想的原因是,其中一個是在添加mongo.ini
之後才起作用。其次,CLI和瀏覽器gui輸出的PHP info()
不匹配。
和來自GUI
的這些都被扯斷秒開。沒有進行配置更改或重新啓動。出於某種原因,CLI輸出表示加載的配置文件是預期的/etc/php.ini
。但瀏覽器GUI顯示爲(none)
。這裏發生了什麼?這就是爲什麼extension=mongo.so
永遠不會從php.ini
文件加載?
版本
Apache/2.4.6
PHP/5.4.16
CentOS Linux release 7.3.1611
[[email protected] etc]# find/-name php.ini
/etc/php.ini
是如此,甚至適當的地方呢?或者我應該搬到不同的論壇?
更新
閱讀Grigory Ilizirov的意見,並做了一些研究之後,我想,如果他想將它張貼在問題得到解答。看起來像Apache的PHP配置沒有被加載。我剛剛假定/etc/php.ini
文件是需要編輯的。現在我只需要弄清楚我將如何做到這一點。
更新2
恢復到一個乾淨的安裝,並再次做了一切。這一次,CLI和web GUI的結果與以前相同,但現在mongo儘管在/etc/php.d/mongo.ini
中添加了,但仍不會加載。懷疑SELinux干擾了Apache。 mongo.ini
不再顯示在其他.ini文件節中。禁用SELinux並重新啓動允許它加載到Apache。
FINAL
這確實是一個SELinux的問題。那麼,這對於未來用戶來說屬於SO嗎?
您使用的Apache? –
@GrigoryIlizirov是的。 apache 2.4.6 – mahbad
您需要編輯位於\ apache \ apahce2.4.6 \ bin \ php.ini中的php.ini ...針對cli和php的web的php是不同的 –