主機訪問虛擬機器執行django專案

2021-10-05 05:09:08 字數 1795 閱讀 8440

###前提條件

主機和虛擬機器互相ping通

虛擬機器可以訪問外網

虛擬機器安裝curl

python3.7

pip安裝

安裝django

對於django 可以先去看看對應的版本

#根據個人的python安裝目錄不同而不同 如果找不到python安裝在**的可以

#find / -name python 命令檢視

3 #會看到 django-admin 和django-admin.py兩個檔案 如果沒有 就是沒有安裝好

#建立軟連線

ln -s /usr/local/python3/bin/django-admin.py /usr/local/bin/django-admin.py

#如果不小心寫錯了 可以直接去/usr/local/bin/ 用 ls -il 檢視 然後rm -rf 指定刪除

安裝完成然後建立軟連線之後可以測試一下

#執行到你想建立web的目錄 比如我是吧所有的web專案建立在 /study/python/web/ 下面

cd /study/python/web/

django-admin.py startproject helloworld #helloworld是你的專案名

執行完當前就會出現helloworld目錄了

然後執行到helloworld目錄 會有兩個檔案

在這個目錄下面執行

python3 manage.py runserver 0.0.0.0:8000
如果這裡出現這樣的一堆東西

那麼就說明是你的python版本和django版本對不上 這裡可以重新執行一下pip3 install django ==「」對應的版本」這樣就可以了,系統會自動覆蓋原先版本。

成功的是這樣的

執行成功之後。

關閉防火牆

systemctl stop firewalld.service

systemctl disablefirewalld.service #永久移除

因為命令列關係,無法展示頁面 所以可以用curl測試一下

curl 192.168.2.100:8000 #這個ip是我虛擬機器上的內網**
一般不會出現拒絕連線的問題,因為虛擬機器內訪問內網是不會被拒絕的,如果出現拒絕 一般是django出現問題

在主機和虛擬機器之間可以相互ping通的情況下主機就可以開啟該網頁了

虛擬機器執行異常

2.如果斷網,關閉防火牆後,開啟虛擬機器還是沒有反應.可能是軟體執行的權 限不夠,此時要以管理員身份來執行vmware.解決方案 右鍵vmware圖示 屬性 相容性 以管理員身份執行此程式.解決方案 關閉vmware,包括程序裡關掉所有vmware的程序 如果當前是開啟的話。不關閉不會出現 lck ...

Python虛擬機器執行過程

一 執行過程。python先把 py檔案 編譯成位元組碼,交給位元組碼虛擬機器,然後虛擬機器一條一條執行位元組碼指令,從而完成程式的執行。python 虛擬機器載入並執行位元組碼檔案,執行的過程與作業系統載入執行可執行檔案的方式相似。但是python虛擬機器在執行的時候也使用內部構建的棧幀來執行。二...

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

在虛擬機器中的linux上執行了django專案,虛擬機器中可以訪問,但外部主機無法訪問 連線超時 但主機能ping同虛擬機器,虛擬機器也能ping通主機 需檢查三個地方 後面發現虛擬機器的ip位址存在改變的情況,可能是由於主機網路是通過wifi連線的,所以位址經常變,虛擬機器ip位址變更後,未改變...