2016-02-24 52 views
1

問題的情況下設置的Cookie中下一個請求: 瀏覽器的請求,其是爲了一個流的一部分經由鉻顯影劑工具看出:set-cookie頭是在響應,但瀏覽器並不只在nginx的路由器使用

    與some_cookie = 「ABC」,並用some_cookie 響應請求
  1. /request_one GET請求= 「DEF」
  2. 與 請求與some_cookie = 「DEF」 和響應與some_cookie = 「GHI」
  3. /request_one POST請求和303重定向到/ request_xxx
  4. /request_xxx與 要求與some_cookie GET請求=「高清」

我試圖找出爲什麼

關鍵點在這裏做了3次要求使用cookie的「高清」,而不是更新值「GHI」是的,當我通過彈性負載均衡器和nginx路由器時,會發生這種情況。 使用內部URL而不使用nginx路由器的相同流程,工作正常

看起來,在cookie被響應設置之前,重定向請求被創建。這是我的應用程序中的一個正常場景,我更新cookie並執行重定向-303。

從我的發現來看,cookie大小的增加反過來會增加響應,什麼是nginx配置會影響請求和響應大小限制。我在nginx錯誤日誌中看不到任何錯誤,儘管

有沒有一種方法可以在chrome中從第2步響應調試到第3個重定向請求?當執行通過捲曲 這個請求

更新同樣的問題,原木是我看到的時候通過捲曲

  • 忽略響應體

  • 連接#0主辦APPLICATION_URL原封不動跑

  • 發行請求給此URL: 'https://application_url/contextpath/request_xxx'

  • 禁用POST,用GET

  • 主機APPLICATION_URL發現包:XXXXXXXXXXXX

  • 重新使用現有的連接! (#0)與主機APPLICATION_URL

  • 已連接到APPLICATION_URL(IP_HERE)端口443(#0)

+0

至於Chrome中的重定向調試,請檢查DevTools的網絡面板中的「保留日誌」框。 –

+0

謝謝亞歷山大。我已經檢查過保存日誌。那就是我如何發現第三個請求沒有更新的cookie值。所以在這裏我想要一種方法來在第二步停下來,並從中得到捲髮請求。所以我可以使用curl和--verbose調用第三個請求。 –

+0

我可以在Chrome中禁用303重定向嗎? –

回答

1

最後發現,這是餅乾大小造成的問題。 基於以下網站,Chrome已經限制了對4096和我經過4116

http://browsercookielimits.squawky.net/

是通過內部URL中使用時,它的工作,爲什麼我被衝昏頭腦nginx的。但那不是問題。

所以有一點要明白的是,當cookie大小超過限制時,chrome不會投訴。在創建下一個請求時,它不會使用它

+0

所以要注意cookie怪物(正如我的同事所描述的:))並記住一個咒語**爲了支持大多數瀏覽器,每個域不要超過50個cookie,並且不要超過4093每個域的字節數**,如http://browsercookielimits.squawky.net/中所述 –

相關問題