在虛擬機中的linux上運行了Django項目,虛擬機中可以訪問,但外部主機無法訪問(連接超時),但主機能ping同虛擬機,虛擬機也能ping通主機
需檢查三個地方:(后面發現虛擬機的ip地址存在改變的情況,可能是由於主機網絡是通過wifi連接的,所以地址經常變,虛擬機ip地址變更后,未改變下面的第二步的設置,主機依舊可以訪問虛擬機的django網站,所以第二步並不是必須的步驟)
1.運行Django的命令,要寫成: python3 manage.py runserver 0.0.0.0:8000 ,重點就是這個0.0.0.0,這樣才能讓外部訪問到
2.VM軟件的虛擬機網絡配置

主機端口: 主機瀏覽器訪問Django的端口,默認為8000(可自行修改)
虛擬機IP地址: 在虛擬機中輸入ifconfig命令獲取
虛擬機端口: xshell工具連接虛擬機所用的端口

3.防火牆(不只是主機的防火牆,虛擬的防火牆一樣要關掉,如果前面兩步都設置好了那基本就是防火牆的問題)
systemctl stop firewalld.service(關閉防火牆,重啟后無效)
systemctl disable firewalld.service(關閉防火牆,永久有效)
4.在Django的setting.py文件中修改一下 ALLOWED_HOSTS,ip為虛擬機的ipv4地址
最后,在主機瀏覽器運行網址

