Dropzone.js 尝试上传超过 5mb 的文件时出现 post 500 错误(内部服务器错误)
Dropzone.js get error on post 500 (Internal Server Error) when try to upload file more then 5mb
这是我的代码:
var previewNode = $("#template");
previewNode[0].id = "";
var previewTemplate = previewNode.parent().html();
previewNode.remove();
var documentsDropzone = new Dropzone("#AddDocumentModal #AddFiledropzoneForm", {
url: '/Admin/Admin/SaveTempFile/',
previewTemplate: previewTemplate,
previewsContainer: "#documentpreviews",
clickable: "#dropzonePreviewZone",
accept: function (file, done) {
$('#add-Document-submit').prop('disabled', false);
var fileType = file.name.split('.').pop().toLowerCase();
var isValidFileType = fileType == 'docx' || fileType == 'doc' || fileType=='pdf';
if (!isValidFileType) {
$('#add-Document-submit').prop('disabled', true);
documentsDropzone.disable();
$('.dropzone-add-document-error-message').show();
}
else {
$('#documentpreviews').show();
done();
}
}
});
当我上传小文件时一切正常。但是当我尝试上传大小超过 5 MB 的文件时,我收到这样的错误 500 (Internal Server Error)
。
这是 html 代码:
<div id="dropzonePreviewZone" class="dz-default dz-message default-view-dropzone-css">
<span class="glyphicon glyphicon-open upl-img dropzone-glyphicon-upload"></span>
<br/>
<span class="drop-text">Drop files here or click to upload</span>
</div>
<div class="files" id="documentpreviews"></div>
<div class="dropzone-add-document-error-message">
<div class="dropzone-error-div"><img src="@Links.Content.images.Declined_png" alt=""/></div>
<div class="dropzone-error-div dropzone-error-message"><p>Error! Files of this format are not accepted!</p></div>
<button class="close-dropzone-error-message dropzone-error-div"><img src="~/Content/images/delete_icon.png" alt=""/>
</button>
</div>
<div class="files" id="logopreviews">
<div id="template" class="file-row">
<div class="dropzone-elements-result-upload succes-dropzone-file-upload-body">
<img src="@Links.Content.images.Approved_png" alt=""/>
<span class="name" data-dz-name></span>
(<span class="size" data-dz-size></span>)
<div class="progress progress-striped active" role="progressbar" aria-valuemin="0" aria-valuemax="100"
aria-valuenow="0">
<div class="progress-bar progress-bar-success" data-dz-uploadprogress></div>
</div>
</div>
<button class="remove-Temp-File dropzone-elements-result-upload"><img src="~/Content/images/delete_icon.png"
alt=""/></button>
</div>
</div>
谁能帮帮我?我不明白我做错了什么。
您必须编辑 php.ini 文件,因为文件的最大大小太小了。在您的 php ini 中更改 upload_max_filesize
的值。另外,更改 maxRequestLength
有时会导致此错误。我在上传一个巨大的 XML 文件
时遇到了同样的问题
问题是因为权限。
通过设置对 775 上传目录的权限解决然后我的问题就解决了。
这是我的代码:
var previewNode = $("#template");
previewNode[0].id = "";
var previewTemplate = previewNode.parent().html();
previewNode.remove();
var documentsDropzone = new Dropzone("#AddDocumentModal #AddFiledropzoneForm", {
url: '/Admin/Admin/SaveTempFile/',
previewTemplate: previewTemplate,
previewsContainer: "#documentpreviews",
clickable: "#dropzonePreviewZone",
accept: function (file, done) {
$('#add-Document-submit').prop('disabled', false);
var fileType = file.name.split('.').pop().toLowerCase();
var isValidFileType = fileType == 'docx' || fileType == 'doc' || fileType=='pdf';
if (!isValidFileType) {
$('#add-Document-submit').prop('disabled', true);
documentsDropzone.disable();
$('.dropzone-add-document-error-message').show();
}
else {
$('#documentpreviews').show();
done();
}
}
});
当我上传小文件时一切正常。但是当我尝试上传大小超过 5 MB 的文件时,我收到这样的错误 500 (Internal Server Error)
。
这是 html 代码:
<div id="dropzonePreviewZone" class="dz-default dz-message default-view-dropzone-css">
<span class="glyphicon glyphicon-open upl-img dropzone-glyphicon-upload"></span>
<br/>
<span class="drop-text">Drop files here or click to upload</span>
</div>
<div class="files" id="documentpreviews"></div>
<div class="dropzone-add-document-error-message">
<div class="dropzone-error-div"><img src="@Links.Content.images.Declined_png" alt=""/></div>
<div class="dropzone-error-div dropzone-error-message"><p>Error! Files of this format are not accepted!</p></div>
<button class="close-dropzone-error-message dropzone-error-div"><img src="~/Content/images/delete_icon.png" alt=""/>
</button>
</div>
<div class="files" id="logopreviews">
<div id="template" class="file-row">
<div class="dropzone-elements-result-upload succes-dropzone-file-upload-body">
<img src="@Links.Content.images.Approved_png" alt=""/>
<span class="name" data-dz-name></span>
(<span class="size" data-dz-size></span>)
<div class="progress progress-striped active" role="progressbar" aria-valuemin="0" aria-valuemax="100"
aria-valuenow="0">
<div class="progress-bar progress-bar-success" data-dz-uploadprogress></div>
</div>
</div>
<button class="remove-Temp-File dropzone-elements-result-upload"><img src="~/Content/images/delete_icon.png"
alt=""/></button>
</div>
</div>
谁能帮帮我?我不明白我做错了什么。
您必须编辑 php.ini 文件,因为文件的最大大小太小了。在您的 php ini 中更改 upload_max_filesize
的值。另外,更改 maxRequestLength
有时会导致此错误。我在上传一个巨大的 XML 文件
问题是因为权限。 通过设置对 775 上传目录的权限解决然后我的问题就解决了。