2013-03-02 52 views
0

我試圖讓我的網頁,以流,但我發現了以下錯誤:的Rails 3.2 HTTP流失敗(在Windows瘦服務器)

錯誤321(淨值:: ERR_INVALID_CHUNKED_ENCODING):未知錯誤

我試過Chrome,IE和Firefox。

def login 
    redirect_to_stored and return if session[:user] 
    if request.post? 
     if session[:user] = User.authenticate(params[:login], params[:password]) 
      redirect_to_stored(notice: 'Login successful') and return 
     else 
      flash_now :alert => "Login unsuccessful" 
     end 
    end 
    on_document_load "$('#login').focus();" 
    render :layout => 'login', :stream => true 
end 

我碰到下面的響應頭:

Cache-Control:must-revalidate, private, max-age=0 
Connection:close 
Content-Type:text/html; charset=utf-8 
Server:thin 1.5.0 codename Knife 
Set-Cookie:_rails3.website_session=biglongstringhere; path=/; expires=Sat, 02-Mar-2013 01:44:38 GMT; HttpOnly 
Set-Cookie:__profilin=p%3Dt; path=/ 
Set-Cookie:__profilin=p%3Dt; path=/ 
Transfer-Encoding:chunked 
X-MiniProfiler-Ids:[a bunch of stuff in here (this isn't the actual text)] 
X-Request-Id:695da38a40064d87cbd463c83fef0a88 
X-Runtime:0.034002 
X-UA-Compatible:IE=Edge 

展望Chrome的檢查,文件「登錄」的狀態顯示爲「失敗」,但點擊它的時候,狀態代碼爲200 OK。我注意到的另一件事是,如果我在原始渲染調用之前放置以下內容,響應將顯示「確定」,但Chrome檢查器仍認爲狀態響應出錯(如第一次)。在身體的其他部分有機會交付之前,連接是否關閉?我不明白這裏有什麼問題。

render(:text => 'test', :stream => true) and return 

作爲附錄,rails日誌不顯示任何錯誤。它呈現一切正常。

回答

0

我有兩臺服務器;一個在工作,一個在家。家中的人不使用nginx或任何下游應用程序與Thin進行通信。自己變薄會產生一個錯誤...但在前面使用nginx時,文件會得到適當的處理。奇怪的是,當我的rails應用程序中沒有顯式啓用任何流時,這些文件仍作爲內容類型:分塊。

哎呀,即使我的公共網站是作爲分塊...但我從來沒有在Rails中啓用流......所以這意味着最終結果是分塊但不是html的實際呈現。那我該如何測試呢?

+0

這沒有回答你自己的問題,它爲什麼被接受? – gouravtiwari21 2016-05-24 14:40:57

+0

不記得......我要改變這一點。 – JakeTheSnake 2016-05-24 23:54:41