【问题标题】:Can't increase MAMP php memory limit无法增加 MAMP php 内存限制
【发布时间】:2014-11-17 18:13:16
【问题描述】:

我一直在尝试增加 MAMP (Mac OSX) 中的 php memory_limit。我使用的 PHP 版本是 5.4.1.0。我已阅读有关为 MAMP Pro 创建新模板的信息,但我使用的是标准版本的 MAMP。

我已经尝试了以下所有方法,但似乎没有任何效果。任何帮助将不胜感激。

感谢您的宝贵时间。


我已将以下内容添加到我的站点的 htaccess 文件中,该文件由站点读取并运行(ExpressionEngine)。但是主 PHP 限制仍然没有更新。
php_value memory_limit 128M

我已在以下文件中将以下内容从 32M 更改为 128M:

/Applications/MAMP/conf/php5.4.10
memory_limit = 128M;

然后我完全退出 MAMP 并重新启动它,但在 MAMP phpInfo 中它仍然显示:
memory_limit 32M


虚拟主机

我正在使用虚拟主机来设置我自己的 URL。我在某处读到可能有必要在这里增加内存限制。所以我将此添加到'php_value memory_limit 128M':

/Applications/MAMP/conf/apache/extra/httpd-vhosts.conf

<VirtualHost *:80>
 DocumentRoot /Applications/MAMP/htdocs
 ServerName localhost
 php_value memory_limit 128M
</VirtualHost>

并在相关站点配置的同一文件中降低:

<VirtualHost *:80>
  DocumentRoot "/Users/Username/Dropbox/Dev/sitename.dev"
  ServerName sitename.dev
  php_value memory_limit 128M
</VirtualHost>

(顺便说一句,我将我的 MAMP 文件夹(Dev)保存在 Dropbox 中,它工作正常)


php.ini

我还在我的站点目录的根目录和我的 MAMP 目录的根目录中添加了一个包含以下内容的 php.ini 文件:

memory_limit = 128M

【问题讨论】:

  • 注意不同的php.ini 和 Suhosin 补丁,它们有自己的内存限制配置。

标签: php mamp expressionengine memory-limit


【解决方案1】:

创建一个phpinfo.php 并将phpinfo(); 放在输出中,您可以看到加载的配置文件和值。

编辑加载的 php.ini 文件并设置内存限制。我认为您编辑了错误的 php.ini 文件,或者您的应用程序将值设置为超过 memory_limit

【讨论】:

  • MAMP PRO 在 CGI 模式下运行时,会覆盖 memory_limit 的本地值。 =/
【解决方案2】:

设法解决它;-)

正确的是:

/Applications/MAMP/bin/php/php[your_php_version]/conf/php.ini

找到'memory_limit'并增加数量:

memory_limit = [number]M

谢谢!

【讨论】:

  • 我已经更改了 memory_limit 但仍然无法正常工作。我正在使用 PHP 7.3.8。我的配置目录是 /Applications/MAMP/bin/php/php7.3.8/conf/php.ini
【解决方案3】:

在遇到 PHP v.7.2 的相同问题后来到这里。要解决此问题,我需要转到路径 /usr/local/etc/php/7.2/conf.d/php-memory-limits.ini 并更改以下内容:

; Max memory per instance
memory_limit = 2048M

我尝试过的任何其他方法都不会改变它。

现在我在我的项目中尝试使用 composer 拉取包时不会出现此错误(致命错误:允许的内存大小为 536870912 字节已用尽...)

【讨论】:

    【解决方案4】:

    在 Mamp Pro 和 PHP 版本 7.2.8 中,您可以在此路径中找到配置文件:

    /Applications/MAMP/bin/php/php7.2.8/conf/php.ini
    

    但是根据phpinfo();我加载的配置文件在不同的路径!在这里:

    /Library/Application Support/appsolute/MAMP PRO/conf/php7.2.8.ini
    

    别忘了重启 Mamp Pro。

    【讨论】:

      【解决方案5】:

      我可以在 MacOS 上使用 MAMP PRO 5.5 设置 memory_limit :

      /Applications/MAMP/bin/php/php7.3.8/conf/php.ini
      

      PHP 模式是每个主机的单独 PHP 版本(CGI 模式)

      【讨论】:

        【解决方案6】:

        我已经追了几个小时,试图浏览我所有的 php.ini 文件,试图用文本编辑器更新设置并保存它。每次我重新启动 MAMP 时,设置都会被改回并且文件会被覆盖。所以这就是我最终没有被 MAMP 覆盖的地方。

        在 MAMP 中,使用菜单获取您正在使用的 PHP 版本。我的现在是 7.3.1。

        1. MAMP &gt; File &gt; Edit Template &gt; PHP(php.ini) &gt; 7.3.1
        2. 将打开一个编辑器窗口,然后使用搜索栏找到您的设置...memory_limit
        3. 更新您的设置
        4. Cmd + S 然后关闭编辑器窗口或直接关闭编辑器窗口并在出现提示时单击“保存”
        5. MAMP 将使用新设置自动重新启动服务器

        【讨论】:

        • 这让我发疯了。如果您使用 MAMP(在 MacOS 上),这是一个必须提示
        猜你喜欢
        • 2015-08-31
        • 2018-03-03
        • 2014-04-24
        • 2010-11-26
        • 2014-10-03
        • 1970-01-01
        • 1970-01-01
        • 2022-01-03
        相关资源
        最近更新 更多