我們正試圖從PHP5切換到PHP7。phpinfo說php.ini路徑是C: Windows但沒有php.ini那裏
我們現在已經安裝了Apache和PHP。
但是,我們在php.ini
文件中所做的更改不起作用。
通過phpinfo()
我們意識到原因是Configuration File (php.ini) Path
是C:\Windows
。
在我們httpd.conf
我們有:
# PHP7 setup
LoadFile "C:/test/php/php7ts.dll"
LoadModule php7_module "C:/test/php/php7apache2_4.dll"
AddHandler php7-script .php
PHPINIDir "C:/test/php"
我的理解是應該讓Apache查找php.ini
在c:\test\php
(正斜槓在http.conf中使用要求)
不瞭解Apache爲什麼不尋找我們告訴它的php.ini
的原因,我們把php.ini
放在c:\Windows
那裏,它仍然沒有被讀取(我們在php.ini
中加載的模塊沒有加載到phpinfo中)。
每當我們對php.ini
或httpd.conf
進行更改時,我們都會使用Apache監視器重新啓動Apache。
我們如何告訴Apache在特定的目錄中讀取php.ini
文件,而不是我們上面嘗試的?
附錄:
我們改用一切恢復PHP5現在得到相同的錯誤在哪裏PHP的路徑是上面的截圖。它說它現在是PHP 5.6.0,所以它顯然正在加載新的PHP版本,但有些內容已更改,因此php.ini文件在任一版本中都不會被讀取。 (???)
重新啓動也沒有幫助。
可能會有所幫助https://www.howtoforge.com/how-to-specify-a-custom-php.ini-for-a-website-apache2-with-mod_php –
嘗試使用PHPRC ?您可以指定包含php.ini的目錄的路徑,而不是指向php.ini的直接路徑。所以** export PHPRC =/test/php **。希望這可以幫助? – izk
這聽起來有點像執行'phpinfo()'腳本時的緩存問題...確保在瀏覽器中進行深度重新加載或爲此禁用緩存。 – arkascha