MAC OSX上的php.iniconfiguration

我在mac osx上遇到一个PHPconfiguration文件php.ini的奇怪问题。 我已经创build了一个phpinfo文件。 在浏览器中调用它显示的PHP设置 –

* *configuration文件(php.ini)path:/ etc

加载configuration文件:/private/etc/php.ini**

然而,在这个位置编辑php.ini文件(当然重新启动Apache),这些更改并不反映在php设置以及phpinfo文件中。 例如:更改bcmath十进制数字,更改时区设置等。是否有另一个主要位置从Apache将拿起设置文件。 任何帮助将不胜感激。

这是一个旧的帖子,但我有这个问题,搜索互联网无济于事,所以我在这里回答后代。

我正在使用本地Mac OSX apache2和josegonzales的自制水龙头 。

引用我的系统管理员的朋友,“答案应该在于重启PHP-FPM而不是Apache。Apache使用mod_fastcgi通过PHP-FPM运行php的端口或套接字连接到PHP。

您需要加载/卸载与您的PHP-FPM安装相关的plist文件。 首先检查〜/ Library / LaunchAgents不在吗? 我的位置在这里: /usr/local/Cellar/php53/5.3.26/homebrew-php.josegonzalez.php53.plist

它的重新启动是这样的: launchctl unload -w /usr/local/Cellar/php53/5.3.26/homebrew-php.josegonzalez.php53.plist && launchctl load -w /usr/local/Cellar/php53/5.3.26/homebrew-php.josegonzalez.php53.plist;

我将以下内容添加到〜/ .bash_profile中,以便在重新启动apache时可以重新启动PHP-FPM。 调用以下命令是“apachectlrestart”

 function apachectlrestart () { sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist && sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist && launchctl unload -w /usr/local/Cellar/php53/5.3.26/homebrew-php.josegonzalez.php53.plist && launchctl load -w /usr/local/Cellar/php53/5.3.26/homebrew-php.josegonzalez.php53.plist;} 

Glassdimly的回答帮助我解决了这个问题。

问题:

  • 'Loaded configuration file'phpinfo()输出中显示'/usr/local/etc/php/7.0/php.ini' ,我的模块(imagick)没有被php加载。

  • 我尝试手动包括我的模块在主php.ini文件,并重新启动Apache,但'Loaded configuration file'没有更新。

  • 我试图杀死所有的Apache的实例,并重新启动Apache – 仍然是一样的。

  • 我试图重命名我的php.iniphp.ini_并重新启动Apache,但'Loaded configuration file'仍然显示旧的php.ini文件。

解:

  • 在阅读Glassdimly的回答之后,我尝试了这些步骤:

  • launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.php70.plist

  • launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php70.plist
  • 而繁荣 – 它的工作!
  • 接下来我在~/.bash_profile里面设置快捷方式:

     # restart php-fpm function restart_fpm(){ plist=~/Library/LaunchAgents/homebrew.mxcl.php70.plist launchctl unload -w $plist launchctl load -w $plist echo "PHP 7 fpm restarted" } 
  • source ~/.bash_profile将新函数加载到当前shell中

希望这能帮助一些未来的绝望的Google员工!

从服务面板重新启动您的Apache服务器将反映您所做的新的更改….