2011-08-26 168 views
5

我正嘗試使用MVC.NET,Nginx和Fastcgi設置事件流。流媒體對我使用xsp4的效果很好,但是我一直無法通過Nginx和Fastcgi獲得它。我的目標是打開一個EventSource流和下游數據到我的網站。嘗試通過nginx/fastcgi使用eventsource進行流式傳輸

我試着添加'ngx_http_upstream_keepalive'模塊 - http://wiki.nginx.org/HttpUpstreamKeepaliveModule - 這很有趣,因爲在模塊描述中有「註釋 - 這不適用於HTTP上游」。但是,等一下,是不是模塊的名稱?無論如何,也許我在這裏感到困惑。我也嘗試在我的nginx.conf中添加'proxy_buffering off',這也沒有幫助。

我明白這應該是相當容易做到的,但我很茫然。是否有一些屬性可以添加到我的nginx.conf中以使其工作?或者有什麼東西要添加到.NET中的響應?

請幫我StackOverflow!

回答

6

基於我在這裏讀到:

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

你需要關閉X-加速緩衝。以下是一些示例代碼:

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

希望上面的代碼解決了您的問題。