Dropzone - сервер ответил 0 кодом

Ubuntuu - ssh - Symfony3 - Угловые семена - Dropzone

Я работаю над задачей, которая загружает файл Excel из dropzone в веб-сервис, реализованный с помощью symfony3. Когда загрузка завершена, веб-служба начинает синтаксический анализ файла, чтобы возвратить успешное событие события dorpzone, которое ожидает сигнала от php-части результата синтаксического анализа.

Я нахожусь в фазе развертывания и работаю с ssh-сервером моего клиента. Все работает нормально (загрузка, анализ, сообщение об успешном возврате), когда я запускаю свой веб-сервис с

php bin / console server: запустить myserverurl: порт

но когда я использую виртуальный хост, созданный клиентом, возникает проблема:

после загрузки файла я сразу же получил ошибку Dropzone "Сервер ответил кодом 0", но файл был получен веб-службой, и процесс успешно завершен, конечно, он попытался вернуть успешное конечное сообщение в Dropzone, но это уже вниз. Я проверил файлы с этими размерами (2,4M / 8,9M / 14,5M).

Напротив, все работает хорошо с некоторым файлом (207K / 50K).

Я не могу заключить, если эта проблема из-за параметра extern (apache-limit, ...), я не уверен, блокирует ли сервер событие ожидания dropzone из-за ограничения по времени или что-то еще.

Это моя конфигурация dropzone:

$scope.dropzoneConfig = {
            'options': { // passed into the Dropzone constructor
                'url': $rootScope.baseUrl + 'admin/surveys/updates?access_token=' + $auth.getToken(),
                'maxFiles': 1,
                'uploadMultiple': false,
                'autoProcessQueue': false,
                'maxFileSize': 30
            },
            'eventHandlers': {
                'addedfile': function (file) {
                    if (!$scope.dropzone) {
                        $scope.dropzone = this;
                    }

                    if (!(vm.allowedExt.indexOf(vm.getFileExt(file.name)) > -1 )) {
                        $scope.resetForm();
                        vm.showErrorAlert('L\'extension de votre fichier est invalide , SVP veuilez choisir une extension .xlsx ou .xls');
                        return;
                    }

                    if ($scope.surveyCreate) {
                        if ($scope.surveyCreate.$valid) {
                            vm.enableBtn();
                        } else {
                            vm.disableBtn();
                        }
                    }

                    // survey edit
                    if ($scope.surveyEdit && $scope.selectedSurvey != undefined) {
                        vm.enableBtn();
                    }

                },
                'maxfilesexceeded': function (file) {
                    this.removeAllFiles();
                    this.addFile(file);
                },
                'sending': function (file, xhr, formData) {
                    if ($scope.survey != undefined && $scope.survey.name) {
                        formData.append('name', $scope.survey.name);
                    }

                    if ($scope.selectedSurvey != undefined) {
                        formData.append('survey_id', $scope.selectedSurvey.id);
                    }
                },
                'success': function (file, response) {
                    vm.hideSpinner();
                    $scope.resetForm();
                    if (response.success) {
                        vm.showSuccessAlert();
                        $scope.updateSurveysArray(response.data);
                    } else {
                        vm.showErrorAlert(response.errorMsg);
                    }
                },
                "error": function (file, error, xhr) {
                    vm.hideSpinner();
                    $scope.resetForm();
                    if (error.hasOwnProperty('message'))
                        vm.showErrorAlert(error.message);
                    else
                        vm.showErrorAlert('file transfer error');
                }
            }
        };

Есть идеи?

1 ответ

Сначала проверьте php.ini и проверьте, является ли upload_max_filesize, если он маленький, чем сделать его 1000M

добавить прослушиватель событий на кнопку отправки:

submitButton.addEventListener ("click", function (file) {

    if (myDropzone.getAcceptedFiles().length > 0) {
        if (submitfiles === true) {
            submitfiles = false;
            return;
        }

        file.preventDefault();
        myDropzone.processQueue();

        myDropzone.on("complete", function () {
            submitfiles = true;
            $('#submit_button').trigger('click');
        });
    } 
});
Другие вопросы по тегам