- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業(yè)務(wù)經(jīng)營許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯(lián)網(wǎng)協(xié)會理事單位
- 安全聯(lián)盟認(rèn)證網(wǎng)站身份V標(biāo)記
- 域名注冊服務(wù)機(jī)構(gòu)許可:滇D3-20230001
- 代理域名注冊服務(wù)機(jī)構(gòu):新網(wǎng)數(shù)碼
版本:Tomcat 8.5.8
問題:新安裝的tomcat,用其他機(jī)器訪問tomcat的Server Status、Manager App、Host Manager三個(gè)頁面均顯示403(本機(jī)訪問沒有問題),conf/tomcat-users.xml里已添加配置:
<role rolename="manager-gui"/>
<role rolename="admin-gui"/>
<user username="tomcat" password="qazwsx" roles="manager-gui,admin-gui"/>
重啟之后,還是403,甚至在嘗試使用多種解決方法的時(shí)候還出現(xiàn)過404(原因不明)
查找網(wǎng)上解決辦法無果,大部分網(wǎng)上的文章都只提到了在tomcat-users.xml里添加上面的語句,無法解決,通過查閱官方文檔,英文真的爛(用翻譯軟件,看得一知半解),終于找到真正原因所在。
打開webapps下的host-manager和manager,都有一個(gè)共同的文件夾META-INF,里面都有context.xml,這個(gè)文件的內(nèi)容是:
<Context antiResourceLocking="false" privileged="true" >
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127.d+.d+.d+|::1|0:0:0:0:0:0:0:1" />
</Context>
通過查看官方文檔,知道,這段代碼的作用是限制來訪IP的,127.d+.d+.d+|::1|0:0:0:0:0:0:0:1,是正則表達(dá)式,表示IPv4和IPv6的本機(jī)環(huán)回地址,所以這也解釋了,為什么我們本機(jī)可以訪問管理界面,但是其他機(jī)器確?403。
找到原因了,那么修改一下這里的正則表達(dá)式即可,比如我們只允許內(nèi)網(wǎng)網(wǎng)段192.168.88訪問管理頁面,那么改成這樣就可以:
<Context antiResourceLocking="false" privileged="true" >
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="192.168.88.*" />
</Context>
修改完畢,關(guān)閉瀏覽器,重新打開tomcat,問題解決!
售前咨詢
售后咨詢
備案咨詢
二維碼
TOP