【发布时间】:2020-07-28 16:08:33
【问题描述】:
面临的错误:HTTP 错误 404.13 - 未找到/请求过滤模块配置为拒绝超过请求内容长度的请求
编辑:决定改写和整理我的问题。
每当我通过 FileUpload Control 提交文件时,我都会遇到此错误。我想将文件大小设置为 5MB,如果选择的文件超过 5MB,它将显示错误消息(例如文件超出文件限制,请重试)。以下是我的代码。
**
WebPage1.aspx.cs
**
protected void Button1_Click(object sender, EventArgs e)
{
string gen = "Pending";
//This portion is for storing files in database
FileInfo fi = new FileInfo(FileUpload1.FileName);
byte[] documentContent = FileUpload1.FileBytes;
string name = fi.Name;
//string extn = fi.Extension;
string filextn = Path.GetExtension(FileUpload1.FileName);
//This portion is for storing files in folder
string filepath = Path.GetExtension(FileUpload1.FileName);
if (filepath.ToLower() != ".pdf" && filepath.ToLower() != ".png" && filepath.ToLower() != ".gif" && filepath.ToLower() != ".zip")
{
lblmessage.Text = "Only pdf, png and gif file are accepted";
}
else
{
//int filesize = FileUpload1.PostedFile.ContentLength;
if (FileUpload1.PostedFile.ContentLength > 5242880)
{
//lblmessage.Text = "Maximum size (5MB) exceeded";
Response.Redirect("Error.aspx");
}
}
Web.Config
-
据我了解,maxRequestLength 以千字节 (KB) 为单位
<httpRuntime targetFramework="4.7.2" maxRequestLength="5000" /> -
并且,maxAllowedContentLength 以 BYTES 为单位衡量
<requestFiltering> <requestLimits maxAllowedContentLength="5242880" /> </requestFiltering>
我尝试过的其他方法
- 我在配置编辑器中配置了maxRequestLength;还是失败了。
信用:https://weblog.west-wind.com/posts/2016/apr/06/configuring-aspnet-and-iis-request-length-for-post-data https://hoststud.com/resources/how-to-increase-the-maximum-upload-file-size-in-iis.422/
【问题讨论】:
-
您的问题是“为什么当我阻止通过配置访问我的代码时,我的代码没有被执行”?
-
@AlexeiLevenkov 你可以这样写。抱歉,如果我的问题不是很清楚,我会努力改进。
-
您的客户端代码不能超过服务器限制。
-
嗨@jdweng,我应该如何从这里改进/修改我的代码?我在我的 web.config 文件中设置了 5MB 的限制,并在我的客户端代码中添加了一个逻辑 (PostedFile.ContentLength)
-
你设置了服务器限制吗?
标签: c# asp.net web-config maxrequestlength