自從我們從 .NET Core 2.0 更新到 .NET Core 2.1 (SDK 2.1.302) 以來(lái),我們的 Linux Docker ASP.NET Core 容器服務(wù)器日志被以下“信息性”日志條目填充:INFO|Microsoft.AspNetCore.Server.Kestrel|Connection id "0HLFG42JUAORG" bad request data: "Invalid request line: 'CNXN\x00\x00\x00\x01\x00\x00\x04\x00\x1B\x00\x00\x00M\x0A'" Microsoft.AspNetCore.Server.Kestrel.Core.BadHttpRequestException: Invalid request line: 'CNXN\x00\x00\x00\x01\x00\x00\x04\x00\x1B\x00\x00\x00M\x0A'INFO|Microsoft.AspNetCore.Server.Kestrel|Connection id "0HLFG42JUAORH" bad request data: "Invalid request line: 'CNXN\x00\x00\x00\x01\x00\x00\x04\x00\x1B\x00\x00\x00M\x0A'" Microsoft.AspNetCore.Server.Kestrel.Core.BadHttpRequestException: Invalid request line: 'CNXN\x00\x00\x00\x01\x00\x00\x04\x00\x1B\x00\x00\x00M\x0A'連接 ID 大約每秒增加 1 個(gè)字母/數(shù)字。十六進(jìn)制似乎沒(méi)有轉(zhuǎn)化為任何有意義的 ( NUL NUL NUL SOH NUL NUL EOT NUL ESC NUL NUL LF)。我們排除的事情:它不是源自 WAN/LAN(禁用對(duì)容器的網(wǎng)絡(luò)訪問(wèn),并且仍在生成條目)。它不會(huì)發(fā)生在我們的開(kāi)發(fā)環(huán)境中(帶有 Visual Studio 的 Windows)重新部署 docker 容器并不能解決問(wèn)題。我們認(rèn)為這不是 SSL 問(wèn)題,因?yàn)?kestrel 僅針對(duì) http 進(jìn)行配置。我們可以通過(guò) https 和 wss 訪問(wèn)該應(yīng)用程序及其 websockets (SignalR)
3 回答

泛舟湖上清波郎朗
TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超3個(gè)贊
原來(lái)這是 docker 主機(jī)(debian)和掛起的套接字(netstat 顯示很多 TIME_WAITs)的問(wèn)題。將應(yīng)用程序端口更改為不同的端口,格式錯(cuò)誤的請(qǐng)求停止。
重新啟動(dòng)或重新啟動(dòng) docker 守護(hù)程序可能也會(huì)修復(fù)它,但我們其他容器的正常運(yùn)行時(shí)間至關(guān)重要,因此我們無(wú)法對(duì)其進(jìn)行測(cè)試。

白衣非少年
TA貢獻(xiàn)1155條經(jīng)驗(yàn) 獲得超0個(gè)贊
我遇到了同樣的問(wèn)題,在我的情況下,解決方案是在 nginx 配置中 - 我將 proxy_pass 設(shè)置為 https://localhost:4000 而不是 http://localhost:4000
- 3 回答
- 0 關(guān)注
- 249 瀏覽
添加回答
舉報(bào)
0/150
提交
取消