最近在接觸python的架構 django,真的踩了很多坑。
剛開始是在公司電腦(Ubuntu)上配置django服務,一切歲月靜好,沒啥子大問題,但是公司電腦是台式的,無法攜帶,想在宿舍裡學習一下還必須在自己的電腦上重新配置環境。
我的電腦是windows,安裝各種出錯,又換pip版本,又手動下載下傳django檔案,結果還是失敗,百度了很多,得出的結果是,windows貌似不支援django,非要安裝,可能很麻煩,付出一些代價。
還好,我自己買了一個linux伺服器,安裝、啟動都沒什麼問題,因為是純指令行界面,是以沒辦法在浏覽器驗證,但是通過 links (指令行界面可以通過links 來連接配接網頁,但是隻能得到一些簡單文本顯示)是正常的
yum insatll links
links http://localhost:8000
然後我在windows的浏覽器中通路 x.x.x.x:8000/index,卻顯示 拒絕連接配接,T0T
開始排查問題
1.ping ip ,成功ping通
2.伺服器的8000 的端口已經開啟
3.伺服器防火牆關閉了
各種病急亂投醫,把伺服器的各種相關服務開關無數次
最後還是在再萬能的網友那裡得到了答案:
python manage.py runserver //啟動指令
Django version 1.6.11.7, using settings 'myProject.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C
這個隻是127.0.0.1在中運作的,就是說這個服務隻能使用127.0.0.1通路。。。
最終方法如下:
1.修改 setting.py 中 ALLOWED_HOSTS = [‘*’]
2.python manage.py runserver 0.0.0.0:8000 //允許所有主機通路
感覺有點不太能了解,可能還是慣性思維吧,因為我們平時啟動的一些 tomcat,nginx服務,啟動時,好像通常都是 localhost:xxxx 形式的,但從來沒遇到說,隻能通過localhost主機連接配接的。
解決方法很簡單,但是我為什麼要寫這麼長,主要是想記錄以下我的心曆路程,解決步驟的一些步驟。這次碰見這種情況,也算是打破了自己的慣性思維,下次再遇到,就不會這麼難受了。