Я использую dropzone.js и интегрировал его с Laravel.Все работает как положено.Загрузка файлов меньшего размера без проблем.Но около порога в 3,5 Мб, загрузки имеют тенденцию к остановке.
Пара замечаний:
Согласно моему phpInfo, следующие параметры установлены так:
max_execution_time = 60s
max_file_uploads = 20
memory_limit = 128M
post_max_size = 10M
upload_max_filesize = 10M
Кроме того, при инициализации JS у меня для maxFileSize установлено значение 25 (полный код приведен ниже).
Я также проверил в своей хостинговой компании, и размер сообщения NGINX также установлен равным 25 МБ.
Как упоминалось ранее, сценарий и все, кажется, работает нормально, если файлы меньше ~ 3,5 МБ, поэтому я не обязательно думаю, что это проблема со сценарием или разрешениями.Просто, как только он достигнет отметки 3,5 Мб, загрузка просто останавливается и никогда не заканчивается.Должно быть что-то, где-то, что мешает файлу превышать этот размер - но я не могу понять, на что он способен.
Есть идеи о том, чего мне не хватает?
Dropzone.options.dropzone = {
maxFilesize: 25,
init: function() {
console.log("Its initialized.");
this.on("queuecomplete", function (file) {
console.log(file);
console.log("All done!");
});
},
renameFile: function(file) {
var dt = new Date();
var time = dt.getTime();
return time+file.name;
},
acceptedFiles: ".jpeg,.jpg,.png,.gif,.ai,.psd,.pdf,.tiff,.eps,.svg,.xd",
addRemoveLinks: true,
timeout: 5000,
removedfile: function(file) {
var name = file.upload.filename;
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$.ajax({
type: 'POST',
url: 'logo/delete',
data: {filename: name},
success: function (data){
console.log("File has been successfully removed!!");
$(".logos-wrapper").empty().append(data);
},
error: function(e) {
console.log(e);
}});
var fileRef;
return (fileRef = file.previewElement) != null ?
fileRef.parentNode.removeChild(file.previewElement) : void 0;
},
success: function(file, response) {
console.log(response);
var someValue = "";
$.ajax({
headers: {
'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content')
},
type: 'GET',
url: 'get-logos',
data: {someValue:someValue},
success: function (logos){
$(".logos-wrapper").empty().append(logos);
},
error: function(e) {
console.log(e);
}
});
},
error: function(file, response) {
console.log("There was an error");
return false;
}
};