Saya menjalankan docker dalaman persekitaran shopware6 tempatan menggunakan konfigurasi DDEV.
Selepas mencuba untuk mendapatkan semua produk (~11.000) melalui https://sw6.ddev.site/api/search/product
saya mendapat ralat berikut:
错误:允许的内存大小 1073741824 字节已耗尽(尝试分配 88686592 字节)
Ia menunjukkan kepada saya:
“文件”:“/var/www/html/vendor/symfony/http-foundation/Response.php”,“行”:381
Isi kandungannya ialah:
/** * Sends content for the current web response. * * @return $this */ public function sendContent() { echo $this->content; return $this; }
Saya tahu dari pelayan pementasan kami cara melaraskan had ingatan dan menyelesaikan masalah, tetapi dalam persekitaran tempatan saya, saya tetapkan memory_limit = 1024M
。通过 SSH 连接到我的容器并执行 输出类似于
memory_limit => -1 => -1
Kemungkinan berikut kini tersedia: Pelayan tidak dapat (tidak pasti mengapa) mengendalikan permintaan saya kerana had memori yang tidak dihadkan
Sebarang konfigurasi DDEV、.env 或 .htaccess
akan menimpa fail php.ini yang saya ubah suai.
Laluan ke fail php.ini yang saya edit:
/var/www/html/config/etc/php7/conf.d/php.ini
kandungan php.ini:
[Date] date.timezone="UTC" memory_limit = 1024M upload_max_filesize = 6M max_execution_time = 30
Saya kecewa dengan fakta bahawa apl anda menggunakan terlalu banyak memori, dan 1GB lalai yang ditetapkan oleh DDEV adalah lebih daripada yang dibenarkan oleh kebanyakan tapak pengeluaran. Tetapi jika anda ingin menukar had 1GB, anda boleh melakukannya menggunakan fail konfigurasi dalam
.ddev/php/.ini
, buat direktori.ddev/php code> dan tambah fail ini padanya. Lihat https://ddev. readthedocs.io/en/latest/users/extend/customization-extendibility/#custom-php-configuration-phpini
Sebagai contoh,
.ddev/php/memlimit.ini
.ddev/php/memlimit.ini mungkin mengandungi perkara berikut:Tetapi anda perlu mengetahui sebab apl anda menggunakan begitu banyak memori untuk benar-benar menyelesaikan masalah anda.