2020-01-17,如何將 Django 項目掛到公網云服務器

举报
Mark Chen 发表于 2020/01/17 09:47:43 2020/01/17
【摘要】 當我們成功在本地的開發環境,看到 Django 的火箭要升空的畫面,不要忘記這種簡單的快樂。以這個為起點,要如何部署到公網上,讓其它的人,透過給定的域名網址或是IP 就可以訪問到呢?這裡分享的是個人的經驗,觀念和方向先確定,再來一步一步推進。(1)在部署的正式環境裡先實現開發環境的效果先參考,弹性云服务器 CentOS7.6 運行 【Django3.0】 https://bbs.hua...


當我們成功在本地的開發環境,看到 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/

1579225566659109.png


隨著 Django 3 的新功能也伴隨新的部署方式。在沒有使用新功能的前提下,Apache WSGI 仍是我個人的首推。

這部份的實做,會按(1)的格式,單獨一個 blog 來分享。


此外,請參考官網 support 計畫,如果要部署正式環境,真正投入正式使用,那應該理性選擇 2.2 和 3.2。

3.0 和  3.1 因為生命週期相對較短,如要進到正式環境,要有更新的準備和計畫。

1579224021783608.png




【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。