Ошибка 504 в Laravel при использовании метода размещения файла - PullRequest
1 голос
/ 18 июня 2020

Я загружаю большой файл (это было 100 МБ) на S3 и получаю сообщение об ошибке 504 Gateway Timeout. Эта запутывающая часть заключается в том, что файл действительно все еще загружается, но через некоторое время я получаю ошибку 504? Я транслирую файл, поэтому я думал, что это предотвратит сжигание ресурсов? Когда я загружаю файл меньшего размера (6 МБ), у меня не возникает этой проблемы.

Вот полный код:

public function store(Request $request)
{
    $request->validate([
        'email' => 'required|email',
        'video' => 'required',
    ]);

    if ($request->hasFile('video')) {

        //Upload original file
        $original_key = Storage::putFile(
            'originals',
            new File($request->file('video')),
            ['Content-Disposition' => 'attachment']
        );

        //Convert file for preview
        $config = [
            'PresetId' => '1351620000001-100070',
            'width'  => 1920,
            'height' => 1080,
            'aspect' => '16:9',
            'ext'     => 'mp4',
            'PipelineId' => env('PIPELINE_ID'),
        ];

        $elastcoder = new ElastcoderAWS();

        $original_array = explode('/', $original_key);
        $preview_key = end($original_array);

        $thumbPattern = "thumbnails/{$preview_key}-{count}";

        $job = $elastcoder->transcodeVideo($original_key, $preview_key, $config,  $thumbPattern);

        $submission = new Submission();
        $submission->email = $request->input('email');
        $submission->original = config('filesystems.disks.s3.url') . $original_key;
        $submission->preview = config('filesystems.disks.s3.url') . $preview_key;
        $submission->thumbnail = config('filesystems.disks.s3.url') . "thumbnails/{$preview_key}-00001.png";
        $submission->transcoding_id = $job["Id"];
        $submission->save();

        return response()->json([
            'submission' => $submission,
            'message' => 'Video Upload. Good Luck!!!'
        ]);
    } else {
        return response()->json([
            'submission' => false,
            'message' => 'Upload Error. Please try again later.'
        ]);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...