如何在Mac OS X Mojave上更新php.ini?

时间:2018-12-20 15:37:40

标签: php apache macos-mojave php-ini memory-limit

我在Mac OS X Mojave上

第1步

我跑了

php -i | grep php.ini

我知道了

Configuration File (php.ini) Path => /usr/local/php5/lib
Loaded Configuration File => /usr/local/php5/lib/php.ini

第2步

我打开ini文件

vi /usr/local/php5/lib/php.ini , 

and update memory_limit to -1 

enter image description here

第3步

我跑了

php -i | grep memory_limit

我知道了

memory_limit => 256M => 256M                                                                                      

第4步

我重新启动

sudo apachectl -k restart

并输入我的密码

并尝试

php -i | grep memory_limit

再次,我还是

memory_limit => 256M => 256M                                                                                      

似乎我的旅行从未生效...

我需要在Mac上启动任何服务吗?如果是这样,执行什么命令?

phpinfo

enter image description here

3 个答案:

答案 0 :(得分:0)

编辑:

使用以下命令创建一个空的php文件:

<?php phpinfo(); ?>

使用您的Web浏览器(localhost / yourfile.php)加载它。

检查:

  1. “已加载的配置文件”与您更改的配置文件匹配。
  2. “ memory_limit”具有应该具有的值。

我通常使用Brew安装“干净”的php。所以这里有几个问题可以确定:

  1. 您将php用作cli还是与Apache / Nginx一起使用? (可能是2个配置文件)
  2. 如果您使用的是Apache,是否重新启动了它? (sudo apachectl -k restart)
  3. 您尝试使用更常规的值(例如2048M)吗?我不确定始终支持-1。

答案 1 :(得分:0)

答案很简单。

您编辑的PHP INI文件与Apache服务器中加载的INI文件不同。

您必须在apache httpd.conf文件中更新PHP加载程序。

之后,使用sudo apachectl restart重新启动apache服务器。

最后,现在您可以使用phpinfo();

测试apache2中加载的PHP ini文件了。

答案 2 :(得分:0)

虽然这是个老问题,但仍有很多人在挣扎。所以想回答它。

  • 安装的 php.ini 位于 /usr/local/php5/lib/php.ini (或它 可以在 /usr/local/etc/php/7.3/php.ini )

  • Apache 使用的php.ini 不同的是/etc/php.ini。

    vi /usr/local/php5/lib/php.ini

因此以上对 php.ini 的更改不会反映在 Apache 中。解决方案是在 apache 配置文件中指向正确的 PHP。

sudo vi /etc/apache2/httpd.conf

搜索模式“LoadModule php”并使用 libexec 注释现有行并将以下行添加到您的安装中。

#LoadModule php7_module libexec/apache2/libphp7.so
LoadModule php7_module /usr/local/opt/php@7.3/lib/httpd/modules/libphp7.so

重启你的apache

sudo apachectl restart

检查日志文件

tail -f  /var/log/apache2/error_log