搜索

首页  >  问答  >  正文

DDEV中如何设置PHP memory_limit

我正在使用 DDEV 配置运行本地 shopware6 环境 insider docker。

尝试通过 https://sw6.ddev.site/api/search/product 获取所有产品(~11.000)后,出现以下错误:

错误:允许的内存大小 1073741824 字节已耗尽(尝试分配 88686592 字节)

它向我指出: “文件”:“/var/www/html/vendor/symfony/http-foundation/Response.php”,“行”:381

内容是:

1

2

3

4

5

6

7

8

9

10

11

/**

     * Sends content for the current web response.

     *

     * @return $this

     */

    public function sendContent()

    {

        echo $this->content;

 

        return $this;

    }

我从我们的登台服务器知道如何调整内存限制并解决问题,但在我的本地环境中我设置了 memory_limit = 1024M。通过 SSH 连接到我的容器并执行 输出类似于 memory_limit => -1 => -1

现在有以下可能性: 由于无上限的内存限制,服务器无法(不知道为什么)处理我的请求

任何 DDEV、.env 或 .htaccess 配置都会覆盖我修改的 php.ini 文件。

我编辑的 php.ini 文件的路径: /var/www/html/config/etc/php7/conf.d/php.ini

php.ini内容:

1

2

3

4

5

6

[Date]

date.timezone="UTC"

  

memory_limit = 1024M

upload_max_filesize = 6M

max_execution_time = 30


P粉275883973P粉275883973435 天前743

全部回复(1)我来回复

  • P粉715228019

    P粉7152280192023-11-05 12:12:25

    您的应用占用了太多内存,而 DDEV 设置的默认 1GB 远远超出了大多数生产站点允许的内存,这一事实让我无可奈何。但如果您想更改 1GB 限制,可以使用 .ddev/php/.ini 中的配置文件来完成,创建目录 .ddev/php 并向其中添加一个 ini 文件。请参阅 https://ddev。 readthedocs.io/en/latest/users/extend/customization-extendibility/#custom-php-configuration-phpini

    例如,.ddev/php/memlimit.ini 可能包含以下内容:

    1

    2

    [PHP]

    memory_limit = 2G

    但是您需要弄清楚为什么您的应用使用如此多的内存才能真正解决您的问题。

    回复
    0
  • 取消回复