在 IIS 上部署时获取 JSONP Get 请求的 404 错误

Getting 404 error for JSONP Get request when deployed on IIS

我正在使用数据类型为 jsonp 的 jquery AJAX。它在我拥有大量数据的本地开发环境中运行良好。但是当我将它部署在 IIS 上时,它只适用于长度小于 2121 个字符的请求,超过 2121 个字符时会出现 404 错误。

我也搜索过关于太长url的错误,太长url它应该给出414错误代码。

我也在 web.config 中使用了 following,但没有任何改进

<httpRuntime maxRequestLength="8192" executionTimeout="180" />

让我知道哪里错了。

我必须在 web.config 中提供这两个值才能正常工作。
如果您使用 IIS 托管您的应用程序,则默认内容大小为 4MB。要增加它,请在您的 web.config 中使用下面的部分 - 正如您

 <system.web>
        <httpRuntime maxRequestLength="1048576" />
    </system.web>

而在system.webServer中,您需要为 IIS 7 及更高版本添加此部分

<security>
    <requestFiltering>
        <requestLimits maxAllowedContentLength="1073741824" />
    </requestFiltering>
</security>

maxRequestLength 为 1048576 KB,maxAllowedContentLength 为 1073741824 BYTES。 如果要全局处理此设置,请确保将此设置添加到主 Web.config 而不是 Views 文件夹中的设置。

经过长时间的研究,我修复了它,这与 Asp.Net 配置无关,而与 IIS 配置有关,以下是解决方案

IIS

-> 单击左侧连接窗格 'Sites' 下的我的站点

-> 双击请求过滤(在主内容窗格中的 IIS 下)

-> 在 'Actions' 右侧 window 窗格中单击 'Edit Feature Settings'

-> 在结果弹出窗口中增加 'Maximum URL length' 和 'Maximum query string'