Apache-2.2
為什麼我在 CLI 和 Apache 上的 php 設置不同?
我目前正在設置一個新的 Mac Mini Lion 伺服器。我現在正在安裝 mongodb 和 apc 擴展。我想在 /etc/php.d 目錄中包含擴展的 ini 設置(類似於我在 centOS 上的伺服器設置)
我試著做
php -i | grep php.d
它給了我
Scan this dir for additional .ini files => /etc/php.d/ Additional .ini files parsed => /etc/php.d/apc.ini, /etc/php.d/mongo.ini PHP_INI_SCAN_DIR => /etc/php.d/ _SERVER["PHP_INI_SCAN_DIR"] => /etc/php.d/
但是當我在 php 腳本上嘗試 phpinfo() 時,我得到了:
Configuration File (php.ini) Path /etc Loaded Configuration File /private/etc/php.ini Scan this dir for additional .ini files (none) Additional .ini files parsed (none)
CLI 和 php 腳本上的 php 環境與 php 相同
/usr/bin/php
並在 php 腳本頁面上
路徑 /usr/bin:/bin:/usr/sbin:/sbin
我應該在apache方面設置什麼嗎?
我正在考慮堅持使用 mac 安裝中的內置 apache 和 php,因為我喜歡 Mac 中的伺服器應用程序。
看起來 PHP CLI 正在使用
/etc/php.ini
文件,請通過以下方式驗證:php -i | grep 'Configuration File'
在 Apache 載入
/private/etc/php.ini
文件時:Configuration File (php.ini) Path /etc Loaded Configuration File /private/etc/php.ini
通過指令指向您想要的正確
php.ini
文件PHPINIDir
。編輯
不知道為什麼
phpinfo()
忽略額外的 .ini 文件,但可以通過 2 種方式強制掃描:
- 在初始化腳本中啟動 Apache 之前插入以下行
export PHP_INI_SCAN_DIR=/etc/php.d
- 將以下內容添加到 Apache 配置文件中:
php_value include_path "/etc/php.d"