Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 如何回应。写在IIS7.5上?_Asp.net_Iis 7.5 - Fatal编程技术网

Asp.net 如何回应。写在IIS7.5上?

Asp.net 如何回应。写在IIS7.5上?,asp.net,iis-7.5,Asp.net,Iis 7.5,我正试图给客户写一封回复信: response.StatusCode = (int)HttpStatusCode.BadRequest; response.ClearContent(); response.Write(String.Format( "<!doctype html>"+CRLF+ "<html>" + CRLF + "<head><title>{0}</title></head&g

我正试图给客户写一封回复信:

response.StatusCode = (int)HttpStatusCode.BadRequest;
response.ClearContent();
response.Write(String.Format(
      "<!doctype html>"+CRLF+
      "<html>" + CRLF +
      "<head><title>{0}</title></head>" + CRLF +
      "<body><h1>{0}</h1>"+CRLF+
      "{1}"+CRLF+
      "</body>" + CRLF +
      "</html>", 
      response.Status, "The grob must be in the frobber."));
response.Flush();
response.End();

如何执行
响应。从IIS写入

是否已检查服务器上是否启用了asp.net?您需要使用Windows服务器管理器检查功能是否已安装


我刚刚在我的服务器上试用了你的代码&尽管我认为
响应的大小写有误,但它还是按预期工作。

你检查过服务器上是否启用了asp.net吗?您需要使用Windows服务器管理器检查功能是否已安装


我刚刚在我的服务器上尝试了您的代码&尽管我假设
响应的大小写有误,但它还是按预期工作。

默认情况下,如果代码>=400,IIS 7将更改响应

但是您可以在
system.webServer
httpErrors
元素中更改这一点

<httpErrors existingResponse="PassThrough" />

默认情况下,如果代码>=400,IIS 7将更改响应

但是您可以在
system.webServer
httpErrors
元素中更改这一点

<httpErrors existingResponse="PassThrough" />

我遇到了这个问题&今天花了几个令人沮丧的小时来处理它。在我的例子中,我通过响应将可能非常大的CSV数据直接发送到客户端。大约每3k记录写入并刷新一次。它在我的本地环境下运行良好,但在Windows 2008服务器上部署到IIS 7.5时失败。没有例外,客户端只有一个空CSV

结果表明,我的应用程序启用了动态压缩。它可以通过web.config直接禁用,也可以在IIS MMC接口中禁用。您可以通过使用浏览器的工具检查收到的响应的标题来验证这一点

Content-Encoding:gzip

禁用动态压缩(不确定最初是如何/为什么启用的),它工作正常。这可能不是你的问题,但却是我的问题。在这一天的大部分时间里,我都在四处搜寻,没有看到答案,所以我想我应该把它扔出去。此外,结果集的大小也无关紧要;5kb文件和3Gb文件也有同样的问题。

我遇到了这个问题,今天花了几个令人沮丧的小时来处理它。在我的例子中,我通过响应将可能非常大的CSV数据直接发送到客户端。大约每3k记录写入并刷新一次。它在我的本地环境下运行良好,但在Windows 2008服务器上部署到IIS 7.5时失败。没有例外,客户端只有一个空CSV

结果表明,我的应用程序启用了动态压缩。可以通过web.config直接禁用,也可以在IIS MMC界面中禁用。您可以通过使用浏览器的工具检查收到的响应的标题来验证这一点

Content-Encoding:gzip

禁用动态压缩(不确定最初是如何/为什么启用的),它工作正常。这可能不是你的问题,但却是我的问题。在这一天的大部分时间里,我都在四处搜寻,没有看到答案,所以我想我应该把它扔出去。此外,结果集的大小也无关紧要;5kb文件和3Gb文件也有同样的问题。

这应该是一个注释,而不是答案。我会说Page_Init可能太早了,但如果我将代码移到那里,它仍然有效。这应该是一个注释,而不是答案。我会说Page_Init可能太早了,但是如果我把代码移到那里,它仍然有效。我希望一个错误请求的响应代码是
400
,也就是说,我不希望将客户端指向一个有代码
200``的页面。如果接收到的
200 OK`,他们可能会认为一切正常。谢谢你:我希望一个错误请求的响应代码是
400
,也就是说,我不希望将客户端指向一个有
200``代码的页面。如果收到
200 OK`,他们可能会认为一切正常。谢谢您:
Content-Encoding:gzip