尝试通过nginx/fastcgi使用eventsource进行流媒体传输

5
我正在尝试使用MVC.NET,Nginx和Fastcgi来设置事件流。 我使用xsp4可以正常工作,但我无法通过Nginx和Fastcgi使其正常工作。 我的目标是打开一个EventSource流,向我的网站下游数据。

我尝试添加了“ngx_http_upstream_keepalive”模块-http://wiki.nginx.org/HttpUpstreamKeepaliveModule-这很有趣,因为模块说明中有“注:这不适用于HTTP上游”。 但是,请等一下,这不是模块的名称吗? 无论如何,也许我在这里感到困惑了。 我还试图将'proxy_buffering off'添加到我的nginx.conf中,但这也没有帮助。

我知道这应该很容易做到,但我束手无策。 有没有一些属性可以添加到我的nginx.conf以使其正常工作? 或者在.NET响应中添加一些内容?

请帮帮我StackOverflow!

1个回答

6

根据我在这里阅读的内容:

http://wiki.nginx.org/X-accel

你需要关闭X-Accel-Buffering。以下是一些示例代码:

public ActionResult Stream(string id)
{
    Response.ContentType = "text/event-stream";
    Response.Buffer = false;
    Response.BufferOutput = false;
    Response.Headers["X-Accel-Buffering"] = "no";
    return View();
}

希望上述代码可以解决你的问题。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接