asp.net – 当请求太大时,为什么IIS返回代码404.13而不是代码413?

IIS具有可配置的阈值,用于过滤掉“太大”的请求,因此可能会对服务器执行DoS操作.
Such requests yield code 404.13.然而,HTTP具有代码413请求实体太大,看起来它完全适用于这种情况.

为什么返回代码404而不是代码413?

最佳答案 我不能说为什么IIS决定避免使用“Request Entity Too Large”的官方代码并使用他们自己的版本.
IIS 7 (where 404.13 was introduced, also see here for more status codes)肯定早于
RFC 2068定义413.有趣的是,
IIS 5 and 6 used the official 413 code.如果有的话,在403(Forbidden)下子类413可能更有意义.

This IIS 7 Q&A建议您可以编写自己的HttpModule来将404.13响应转换为413响应.

旁注:根据RFC 7231,413现称为“有效载荷过大”

点赞