首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

当地没事,服务器上向ASHX文件传值的字数过多报错:“此请求的查询字符串的长度超过配置的 maxQueryStringLeng”

2013-06-26 
本地没事,服务器上向ASHX文件传值的字数过多报错:“此请求的查询字符串的长度超过配置的 maxQueryStringLen

本地没事,服务器上向ASHX文件传值的字数过多报错:“此请求的查询字符串的长度超过配置的 maxQueryStringLeng”
一个发布动态的功能,异步调用的ASHX文件,本地怎么都没事,到了服务器上传过去的值字数太多就会抱这个错
:“此请求的查询字符串的长度超过配置的 maxQueryStringLeng“
CONFIG里找了找,貌似又没有这个东西,敢问各位大侠 应该怎么解决
[解决办法]
1. 修改web.config文件可以改变这个默认值      
     
  <configuration>      
        <system.web>       
                    <httpRuntime maxRequestLength="1048576" executionTimeout="3600" />
        </system.web>      
  <configuration>   

2.另一种方法是修改.NET FrameWork:

  (1) 修改 C:/WINDOWS/Microsoft.NET/Framework/v1.1.4322/CONFIG    目录下的machine.config 文件。

  (2) 查找     "<httpruntime"     在这一行将     maxRequestLength的值改为理想的值,比如想要8M,就输入8192.         
  这样,你的任何一个     web     工程都可以上传最大8M的文件。 
3.顺便说下IIS中限制上传文件大小的修改方法:

  (1)首先要到进程中把IIS服务关了,即把inetinfo.exe进程关了。

  (2)在系统目录中找到:windows/system32/inesrv/metabase.xml”文件,找个文本编辑器打开,查找AspMaxRequestEntityAllowed="204800"这一项,这就是iis上传文件的默认大小了,默认为204800Byte,也就是200KB,将它改为需要的大小就可以了。
[解决办法]
你用的是GET方式,query string最长长度是有限制的,iis是2048字节

修改方法:
asp.net 4.0里:
<httpRuntime maxQueryStringLength="260" maxRequestLength="2048"/>

早期版本,需要改iis的config:
<requestLimits maxQueryString="20480"></requestLimits>

或者改用post方式

热点排行