У меня проблема с большими файлами, использующими Laravel на Appfog, загружаясь в Amazon S3.Ожидание загрузки файла перед отправкой на S3?
Он отлично работает для файлов размером от 1 до 1,5 МБ. Но все больше, и это терпит неудачу.
Похоже на то, что сервер явно запустил код загрузки S3, прежде чем файл будет загружен и в памяти на сервере.
Поскольку сообщение об ошибке необработанного исключения возвращаемого S3 Laravel Bundle ...
Высказывания ....
S3::inputFile(): Unable to open input file:
Когда я загрузить/запустить эту функцию локально через WAMP с тем же файл работает нормально. И делает его S3 отлично.
Его единственный, когда файл проходит через провод через приложение appfog, которое он ломает. Поскольку загрузка локально занимает 20 мс, а загрузка по кабелю занимает около 4 секунд.
Это показывает мне, что он явно запустил код до того, как файл прибыл или что-то в этом направлении.
И снова, он отлично работает с моим приложением, когда файлы маленькие. Только когда они немного больше, он ломается.
Любые идеи ???
public function action_uploadfile(){
$input = Input::all();
if(!empty($input['theDoc']['name'])){
$file = Input::file('theDoc');
$s = Setting::shortcode();
$id = $input['theID']."-".$input['leadID'];
$path_parts = pathinfo($file['name']);
$ext = $path_parts['extension'];
if(!empty($input['theName'])){
$filename = $input['theName'].".".$ext;
} else {
$filename = $file['name'];
}
if((!empty($file))&&(S3::inputFile($file['tmp_name'], false))){
if(S3::putObject($input2, 'myAMAZONBucket', $s."/".$id."/".$filename, S3::ACL_PUBLIC_READ)){
$file2 = Doc::where('uri','=', $s."/".$id."/".$filename)->get();
if($file2){
// duplicate file/document error goes here
} else {
$f = New Doc;
$f->lead_id = $input['leadID'];
$f->sale_id = $input['theID'];
$f->user_id = Auth::user()->id;
$f->notes = $input['theNotes'];
$f->filetype = $ext;
$f->filesize = $file['size'];
$f->filename = $filename;
$f->uri = $s."/".$id."/".$filename;
if($f->save()){
return Redirect::back();
};
}
} else {
//Cannot read file error
}
} else {
//Failed upload error
}
} else {
//No file selected error
}
}
Его интересное, что вы говорите, что .... потому что мой max_execution_time на моей локальной машине составляет 30 секунд, а на сервере, у которого есть проблема, 300 секунд ...... Я не понимаю? – KyleK