Когда видео имеет вес 15 МБ или до 50 МБ, оно отлично работает и правильно загружается в Vimeo.
Я видел, что то же самое случалось со многими людьми, но я не уверен, как им удалось ее решить, поскольку документация мне не понятна на 100%, мне трудно. Может быть, это потому, что я работаю в течение 12 часов и читаю документацию, которая может мне помочь.
Я использую этот пакет: https://github.com/vimeo/laravel
Мой контроллер в методе Store есть:
public function store(Request $request)
{
$validator = Validator::make($request->all(), [
'file' => 'required',
]);
$video = $request->file('file');
Vimeo::upload($video);
}
Я также обнаружил, что одной из рекомендаций было следовать этой документации:
https://www.php.net/manual/en/features.file-upload.post-method.php
Поэтому я попробовал это сделать, как и моя форма.
<form enctype="multipart/form-data" method="POST" action="{{ route('controller.store') }}">
@csrf
<!-- MAX_FILE_SIZE -->
<input type="hidden" name="MAX_FILE_SIZE" value="30000" />
<input name="file" id="fileInput" type="file" />
<input type="submit" disabled value="Send" />
</form>
Еще один шаг, который я предпринял, - отредактировать файл .htaccess, добавив следующую информацию.
memory_limit = 2048M
upload_max_filesize = 700M
upload_max_size = 700M
post_max_size = 700M
max_execution_time = 300
max_input_time = 1000
Но это кажется важным для Я хочу уточнить, что я работаю в своей локальной среде.
Примечание. Моя учетная запись Vimeo проверена для загрузки видео из PHP SDK с ClientID, SecretId и Token.
Таким образом, он остается, когда вы загружаете видео неправильно, и обработка видео может занять несколько часов. Это также приводит к ошибке 504 Gateway Time-out на моем сервере.
Я благодарен за помощь. Я даже пытался загрузить все через Ajax, но для меня это было очень сложно. (Если кто-то может дать мне пример того, как сделать это по-другому, я буду очень признателен)
Я также использую Laravel 6 с PHP 7.3