主機無法訪問虛擬機器中執行的Django專案

2022-09-06 15:18:18 字數 935 閱讀 8721

在虛擬機器中的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(可自行修改)

虛擬機器埠:  xshell工具連線虛擬機器所用的埠

3.防火牆(不只是主機的防火牆,虛擬的防火牆一樣要關掉,如果前面兩步都設定好了那基本就是防火牆的問題)

systemctl stop firewalld.service(關閉防火牆,重啟後無效)

systemctl disable firewalld.service(關閉防火牆,永久有效)

4.在django的setting.py檔案中修改一下 allowed_hosts,ip為虛擬機器的ipv4位址

最後,在主機瀏覽器執行**

主機無法訪問虛擬機器Linux的apache

iptables i input p tcp dport 80 j accept注意linux的命令是區分大小寫的 但是,上面第三步的方法只是臨時生效的,只要你重啟了虛擬機器或者說重啟了linux,就必須重新設定才可以訪問,解決辦法如下 在命令列下輸入 vi etc selinux config s...

主機無法訪問虛擬機器中Linux上的tomcat服務

在wmware中安裝linux後安裝好資料庫,jdk及tomcat後啟動服務,虛擬機器中可以訪問,但是主機卻無法訪問,但是同時主機和虛擬機器之間可以 ping的通,網上查閱資料後,解決方法是關閉虛擬機器中的防火牆服務。桌面 管理 安全級別與防火牆,將防火牆設定為 disable即可。或用 root登...

主機無法訪問虛擬機器中Linux上的tomcat服務

service iptables stop 停止 service iptables start 啟動 但是在實際應用中,關閉防火牆降低的伺服器的安全性,不能關閉防火牆。如果在宿主機的dos視窗下telnet虛擬機器的8080視窗,會失敗,由此可以確定是虛擬機器的8080視窗有問題,應該是被防火牆堵住...