2020-01-17,如何將 Django 項目掛到公網云服務器
當我們成功在本地的開發環境,看到 Django 的火箭要升空的畫面,不要忘記這種簡單的快樂。
以這個為起點,要如何部署到公網上,讓其它的人,透過給定的域名網址或是IP 就可以訪問到呢?
這裡分享的是個人的經驗,觀念和方向先確定,再來一步一步推進。
(1)在部署的正式環境裡先實現開發環境的效果
先參考,
弹性云服务器 CentOS7.6 運行 【Django3.0】 https://bbs.huaweicloud.com/blogs/139553
,這是以華為云的 弹性云服务器 CentOS7.6 為例,也就是說如果用一樣的配置,基本上是可以全盤套用。
如果不是,用對照的方式來實現。
對於沒有調試過服務器的人員來說,是要花些時間熟練操作,許多內容不是一下子就能理解,可以先照著做。
根據每個人不同的IT基礎,很難說要多少小時。
這是開發部署人員的自我學習的一個過程,或許你能找到 no pain 的快速部署,或許你發現專門做部署是一個不錯的商業計畫。
海外是有幾個知名的服務,甚至有入門基本免費的服務,但是受到網路的一些限制,在內地可能不適用。
建議多參考別人的分享,一方面也要透過理論和實做來驗証,注意所使用的各類型服務器及相關應用的版本。
服務器和個人電腦都一樣,一定要在版本內完成必要的升級打完所有安全性的補丁。
對於沒有用過 Linux 環境,尤其是在調試服務器時,應該就使用命令行,不要在這階段想用圖形介面,可以省去沒必要的情緒糾結。
(2)在前述(1)的基礎
要將 python manage.py runserver 改由 Apache WSGI
https://docs.djangoproject.com/en/3.0/howto/deployment/wsgi/modwsgi/
python manage.py runserver
非常適合在開發環境使用,因為大多數情況會隨著你的代碼更新而自動重起。
但是不適合在正式環境,最有說服力的經驗是,遇到你程序沒有處理的錯誤,這個服務器就跳掉了。
我還是找到官網的正式說法
https://docs.djangoproject.com/en/3.0/ref/django-admin/
隨著 Django 3 的新功能也伴隨新的部署方式。在沒有使用新功能的前提下,Apache WSGI 仍是我個人的首推。
這部份的實做,會按(1)的格式,單獨一個 blog 來分享。
此外,請參考官網 support 計畫,如果要部署正式環境,真正投入正式使用,那應該理性選擇 2.2 和 3.2。
3.0 和 3.1 因為生命週期相對較短,如要進到正式環境,要有更新的準備和計畫。
- 点赞
- 收藏
- 关注作者
评论(0)