Heim  >  Fragen und Antworten  >  Hauptteil

So legen Sie das PHP-Speicherlimit in DDEV fest

Ich verwende Insider Docker in der lokalen Shopware6-Umgebung mit DDEV-Konfiguration.

Nachdem ich versucht habe, alle Produkte (~11.000) über https://sw6.ddev.site/api/search/product zu erhalten, erhalte ich die folgende Fehlermeldung:

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

Es hat mich darauf hingewiesen: “文件”:“/var/www/html/vendor/symfony/http-foundation/Response.php”,“行”:381

Der Inhalt ist:

/**
     * Sends content for the current web response.
     *
     * @return $this
     */
    public function sendContent()
    {
        echo $this->content;

        return $this;
    }

Ich weiß von unserem Staging-Server, wie ich das Speicherlimit anpassen und das Problem beheben kann, aber in meiner lokalen Umgebung habe ich memory_limit = 1024M。通过 SSH 连接到我的容器并执行 输出类似于 memory_limit => -1 => -1

eingestellt

Folgende Möglichkeiten stehen ab sofort zur Verfügung: Der Server kann meine Anfrage aufgrund der nicht begrenzten Speicherbeschränkung nicht verarbeiten (nicht sicher warum)

Jede DDEV、.env 或 .htaccess Konfiguration überschreibt die von mir geänderte php.ini-Datei.

Der Pfad zur php.ini-Datei, die ich bearbeitet habe: /var/www/html/config/etc/php7/conf.d/php.ini

php.ini-Inhalt:

[Date] 
date.timezone="UTC" 
 
memory_limit = 1024M 
upload_max_filesize = 6M 
max_execution_time = 30


P粉275883973P粉275883973370 Tage vor679

Antworte allen(1)Ich werde antworten

  • 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 可能包含以下内容:

    [PHP]
    memory_limit = 2G

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

    Antwort
    0
  • StornierenAntwort