解決連接Aria2出現net::ERR_FAILED的問題
編輯:狂族晨曦 來源:經驗雜筆 日期:2021-12-24 閱讀: 3,344 次 搶個沙發 百度已收錄
先森在家里的華碩AC86U路由器上插了一個移動硬盤,并在梅林系統里安裝了Aira2的插件,做了內網穿透,方便隨時隨地的下載資源到移動硬盤上,結果用了一段時間發現,Aria2連接不上了。先森使用的Aria2的web頁面是AriaNG,打開瀏覽器審查工具,報錯如下:

瀏覽器報錯-未連接
排查過程
先森以為是Aria2插件的問題,排查配置了很多遍,沒發現什么異常,甚至重裝了一次插件,照樣報錯。然后懷疑是路由器防火墻問題,查看了下iptables也沒啥毛病,改放通也放通了。在服務器上curl http://192.168.50.1:6800/jsonrpc也是有返回:
![]()
curl的返回
PS:因為服務器和路由器已經使用ZeroTier做了內網互通,所以服務器是可以直接訪問家里路由器的內網IP的。
也在電腦上嘗試了telnet 6800端口,沒毛病,也是通的。
但偏偏就是瀏覽器上直接訪問接口會報錯,狀態碼是400:

400 Bad Request
發現異常
最后,還是在瀏覽器的審查工具上找到了原因,在審查工具的右上角,除了先森常見的顯示[控制臺]報錯數量的紅色提醒外,還有一個[警告]的紅色提醒數,點開后就看到了“Ensure private network requests are made from secure contexts”:

找到問題原因
這么一大串的英文,說的就是使用http站點訪問你本地的資源有很大的風險,你得用https來訪問,為了降低風險,Chrome瀏覽器從92版本(2021年7月)就開始禁止這種請求,怪不得用著用著就嗝屁了。
解決問題
那么知道問題原因了,解決起來就簡單了,要么按照Chrome立的規矩來,使用https,要么就關閉這種新特性。先森也懶得換https了,直接關閉Chrome該特性得了。
Chrome瀏覽器打開chrome://flags/#block-insecure-private-network-requests,打開后就是“Block insecure private network requests.”這一項,把它改成“disabled”關閉,再點右下角的“Relaunch”重新啟動瀏覽器就生效了。

修改瀏覽器配置
這個問題困擾先森挺久的了,一直以為是服務端配置的問題,萬萬沒想到問題出現在客戶端,最后知道真相的先森眼淚。。。
轉載請注明出處來自http://www.cnidcc.cn/aria2_net_err_failed.html

川公網安備 51011202000104號