私はストレージ・ファサードを使用してAWS S3バケットにファイルをアップロードしようとしているLaravel 5.2を使用する:PHP S3バケットにアップロードするときにメモリ不足 - Laravel 5.2
$file = Input::file('file');
Storage::put('filename', file_get_contents($file));
をしかし、私は取得していますエラーメッセージ:
FatalErrorException in RequestException.php line 107:
Allowed memory size of 134217728 bytes exhausted (tried to allocate 47696229 bytes)
ファイルサイズはallowerdメモリサイズの範囲内である、と私はphp.iniで許可されたメモリサイズを増やした場合にかかわらず、それはまだ同じエラーがスローされます。
何が間違っている可能性がありますか?
これをphp.iniに追加する "ini_set( 'memory_limit'、 '-1');"それが動作するかどうかを確認しますか? – error2007s
は関係ありません。ファイルをロードして文字列として渡しています。これは、ENTIREファイルがメモリにロードされていることを意味します。 put()呼び出しの中で何が起こるかに応じて、その文字列の複数のCOPIを作成することもできます。つまり、メモリのオーバーヘッドは、そのファイルのサイズよりもはるかに大きくなります。 –
@ error2007s "ini_set( 'memory_limit'、 '-1');"を追加しました。 php.iniと私のウェブサーバがクラッシュしました。 – TimothyBuktu