1. 程式人生 > >liunx 專案釋出(django + uwsgi + nginx+supervisor釋出web伺服器)

liunx 專案釋出(django + uwsgi + nginx+supervisor釋出web伺服器)

建立一個新的虛擬環境

  mkvirtualenv my_django002

  which 檢視自己是否在虛擬環境

  

  pip3下載django1.11.14

  在自己的Envs檔案下建立一個django專案

  (my_django002) [[email protected]_0_12_centos my_django002]# django-admin startproject mysite15

  啟動測試一下 

  準備完成

 

不使用Python3 啟動專案

使用uwsgi啟動

1.先下載 uwsgi

  pip3 install uwsgi

  下載完成後可以使用uwsgi測試下

  先建立一個 text.py檔案 寫入一下內容:

    def application(env, start_response):
      start_response('200 OK', [('Content-Type','text/html')])
      return [b"Hello World,im uwsgi....."] # python3

  用uwsgi啟動一下   uwsgi --http  :8000  --wsgi-file text.py   返回結果字串

2.編寫一個hello測試檢視
  from django.shortcuts import HttpResponse
    def hello(request):
      return HttpResponse('hello , im uwsgi.....')
  加上url檢視
   urlpatterns = [
      url(r'^admin/', admin.site.urls),
      url(r'^hello/',hello),
   ]

3.通過uwsgi啟動你的django專案

  1.進入你的django專案,這是第一層
  cd /root/Envs/django15/mysite15
  2.通過命令啟動
  uwsgi --http :9000 --module mysite15.wsgi
  3.測試訪問你的django應用 9000埠
4.注意,此時你的專案丟失靜態檔案,因為uwsgi不解析靜態檔案配置  使用nginx

uwsgi熱載入django程式           

自動重啟    --py-autoreload=1

1.啟動命令新增一條引數
uwsgi --http :8088 --module mysite.wsgi --py-autoreload=1

 

配置靜態資源

0.建立uwsgi配置檔案 uwsgi.ini
  [uwsgi]
  #使用nginx連線時使用
  socket=0.0.0.0:9000
  #不用nginx直接當做web伺服器使用
  #http=0.0.0.0:9000
  #專案目錄絕對路徑
  chdir=/root/Envs/django15/mysite15
  #wsgi檔案路徑,在專案底下
  wsgi-file=mysite15/wsgi.py
  #指定直譯器目錄
  home=/root/Envs/django15
  processes=4
  threads=2
  master=True
  pidfile=uwsgi.pid

 

1. 修改uwsgi  配置檔案  之後一定要重啟!!!!!!!!

  

2. 啟動專案

    uwsgi --http :9000  --module mysite.wsgi --py-autoreload=1  

   

  有坑出錯 --

  在這裡使用  一定要在這個檔案目錄下啟動!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

       uwsgi --socket :9000 --module mysite15.wsgi --py-autoreload=1

  當然執行後 還是麼有 靜態檔案