Добрый день.
На локалье работает загрузка файлов, на сервере стоит https и сервер не принимает файл хотя в заголовках видно что он отправлен
html форма:
<form id="userExel"
class="js-post"
action="/clients/addNewFromExel"
method="post"
enctype="multipart/form-data">
<input type="file"
name="file_users"
class="custom-file-input"
id="fileUsers"
required
accept=".xlsx, .xls">
<label class="custom-file-label" for="fileUsers">Выбрать файл</label>
</form>
js для загрузки:
$('.js-post').submit(function (e) {
e.preventDefault();
var self = $(this);
var formData = new FormData($(this)[0]);
var fd = new FormData(this); // XXX: Neex AJAX2
// You could show a loading image for example...
$.ajax({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
url: $(this).attr('action'),
xhr: function () { // custom xhr (is the best)
var xhr = new XMLHttpRequest();
var total = 0;
// Get the total size of files
var files = self.find('input[type=file]');
$.each(files, function (i, file) {
total += file.files[0].size;
});
// Called when upload progress changes. xhr2
xhr.upload.addEventListener("progress", function (evt) {
// show progress like example
var loaded = (evt.loaded / total).toFixed(2) * 100; // percent
loaded = loaded < 100 ? loaded : 100;
// $('#progress').text('Uploading... ' + loaded + '%' );
}, false);
return xhr;
},
type: 'post',
processData: false,
contentType: false,
data: fd,
success: function (data) {
alert('Успешно загружено');
},
error: function(data) {
alert(data.responseText);
}
});
});
php:
function addNewFromExel(Request $request)
{
$response = 'Успешно';
if ($request->isMethod('post')) {
$file = $request->file('file_users');
if ($file->isValid()) {
echo 'валидный файл';
} else {
echo 'ne валидный файл';
}
}
}
В чем может быть проблема с https? почему файл не доходит?