問題現象
本次用virtualbox搭建了一個centos7+django的網站,虛擬機發布端口爲8080,但是從宿主機始終無法訪問,由於默認使用的是網絡地址轉換(NAT),根據網上的描述,只要設置端口轉發就可以了。但是無論如何設置,始終無法從宿主機訪問此8080端口,但是通過telnet是可以的,而且ping也是可以的,說明與防火牆無關。
先把啓動服務的代碼寫下來,等會兒備用:
python3 manage.py runserver 127.0.0.1:8080
解決方案
後來網上沒有找到合適的解決方案,基本都是如下兩種思路:
- 配置端口轉發
- 設置全局網絡,也是需要配置端口轉發
但按照其中的截圖配置,都無法解決問題,最後通過請教熟悉虛擬機和網絡的同事,問題終於得到解決!其實思路都是類似的,只是在具體配置上,有所不同,話不多說,先把問題關鍵的端口轉發圖放上來:
上圖最爲關鍵,一定要配置紅圈裏的IP地址,否則仍然是無法訪問,同時,剛纔那句啓動服務的代碼也需要修改如下:
python3 manage.py runserver 10.0.2.15:8080
至此,問題解決,分享出來,希望碰到類似問題的朋友能夠節省時間。