我試圖阻止從我的筆記本電腦外部訪問我的REST開發 - 應用Tomcat。我發現有希望的解決方案是為 Tomcat 引入一個閥門:
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d \.\d \.\d |::1"/>
它適用于 Linux:目的是,以預期的方式localhost:8080訪問本地Tomcat安裝,而<my-laptop-IP>:8080來自行內網任何地方的任何訪問都將被拒絕。
不幸的是,這在我的Buster筆記本電腦(Linux VirtualBox來賓)上運行良好,但無論是在我的Win10來賓安裝還是在本機Win10筆記本電腦上都localhost:8080無法正常作業:Windows 上的閥門也阻止了對Tomcat 的訪問,盡管我認為,該allow屬性應該允許它。(意味著我的REST開發在 Win10 上被那個閥門阻止了。)
我的問題是:為什么上述閥門在Win10安裝中表現不如預期?
ps 我用 tomcat-9 和 tomcat-10 測驗過。
uj5u.com熱心網友回復:
在大多數現代作業系統localhost上,::1首先決議為 IPv6 地址,然后決議為IPv6 地址127.0.0.1。
根據您使用的連接器,IPv6 地址localhost可能以縮寫形式::1或完整形式出現0:0:0:0:0:0:0:1,因此您的正則運算式應允許兩種表示形式:
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d \.\d \.\d |::1|0:0:0:0:0:0:0:1"/>
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/343322.html
標籤:公猫
