1. 程式人生 > >centos6.5下配置django+uwsgi+nginx

centos6.5下配置django+uwsgi+nginx

本人系統使用的是cetos6.5,python版本為3.5

安裝django

可利用如下命令列安裝

pip install django

預設會安裝到python目錄下的bin資料夾下,如下圖所示
這裡寫圖片描述

  • 如果已經設定了python3.5環境變數可直接使用django-admin來建立專案
  • 如果沒有可利用如下命令來建立軟連線使django-admin任何目錄下均可使用,注意:本人的python3.5目錄為/usr/local/python3.5/,請對照自己的目錄進行更換
ln -s /usr/local/python3.5/bin/django-admin.py /usr/bin/django-admin

測試安裝是否正確:

本人在自己的/root/django目錄下面採用如下命令建立了django的專案

django-admin startproject hello

此時在本目錄我們會發現一個hello的專案已經建立
這裡寫圖片描述

執行如下命令來啟動django專案

cd hello
python manage.py runserver 0.0.0.0:8002

安裝uwsgi

可以執行如下命令進行安裝

pip install uwsgi
  • 如果已經設定了python3.5環境變數可直接使用uwsgi命令來部署服務
  • 如果沒有可利用如下命令來建立軟連線使uwsgi命令在任何目錄下均可使用,注意:本人的python3.5目錄為/usr/local/python3.5/
    ,請對照自己的目錄進行更換
ln -s /usr/local/python3.5/bin/uwsgi /usr/bin/uwsgi

測試安裝是否正確

在家目錄中建立test.py檔案,寫入如下內容:

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

通過如下命令來執行該檔案

uwsgi --http :8002 --wsgi-file test.py

將uwsgi與django結合

剛剛我們建立的django專案位於/root/django/hello


執行如下命令來檢驗uwsgi是否能與django專案成功結合

uwsgi --http :8008 --chdir /root/django/hello --wsgi-file hello/wsgi.py --master --processes 4 --threads 2 --stats 127.0.0.1:9192

常用選項如下所示:

  • http : 協議型別和埠號

  • processes : 開啟的程序數量

  • workers : 開啟的程序數量,等同於processes(官網的說法是spawn the specified number ofworkers / processes)

  • chdir : 指定執行目錄(chdir to specified directory before apps loading)

  • wsgi-file : 載入wsgi-file(load .wsgi file)

  • stats : 在指定的地址上,開啟狀態服務(enable the stats server on the specified
    address)

  • threads : 執行執行緒。由於GIL的存在,我覺得這個真心沒啥用。(run each worker in prethreaded

  • mode with the specified number of threads)

  • master : 允許主程序存在(enable master process)

  • daemonize : 使程序在後臺執行,並將日誌打到指定的日誌檔案或者udp伺服器(daemonize uWSGI)。實際上最常用的,還是把執行記錄輸出到一個本地檔案上。

  • pidfile : 指定pid檔案的位置,記錄主程序的pid號。

  • vacuum : 當伺服器退出的時候自動清理環境,刪除unix socket檔案和pid檔案(try to remove all of the generated file/sockets)

注意:–wsgi-file後面跟的是相對目錄

鑑於後面跟的引數較多,我們可以將這些引數放在一個ini檔案中,當然,uwsgi支援多種型別的配置檔案,如xml,ini等。此處,使用ini型別的配置。
在hello專案目錄下建立hello_uwsgi.ini檔案,檔案內容如下:

# hello_uwsgi.ini file
[uwsgi]

# Django-related settings

http = :8008

# the base directory (full path)
chdir           = /root/django/hello

# Django s wsgi file
module          = hello.wsgi

# process-related settings
# master
master          = true

# maximum number of worker processes
processes       = 4

# ... with appropriate permissions - may be needed
# chmod-socket    = 664
# clear environment on exit
vacuum          = true

此時執行如下命令:

uwsgi --ini myweb_uwsgi.ini 

安裝nginx

可以執行如下命令進行安裝

cd /usr/local/
wget http://nginx.org/download/nginx-1.5.6.tar.gz
tar xf nginx-1.5.6.tar.gz
cd nginx-1.5.6
./configure 
make && make install

執行完之後我們會發現在/usr/local目錄會多出一個nginx目錄
這裡寫圖片描述

測試安裝是否正確

由於80埠較容易被別的程式佔用,需執行如下命令來修改nginx配置檔案中的埠號

vim nginx/conf/nginx.conf

如下圖所示將listen對應的80改成8088,並儲存退出
這裡寫圖片描述
執行如下命令來啟動nginx服務

nginx/sbin/nginx

這裡寫圖片描述

將nginx與uwsgi以及django結合

執行如下命令來修改nginx.conf檔案

vim /usr/local/nginx/conf/nginx.conf

這裡寫圖片描述
主要修改如上圖所示:
listen埠改為8092
在location中新增:

include uwsgi_params;
uwsgi_pass 127.0.0.1:8008;(埠要與ini中的埠一致)

執行如下命令來啟動:

uwsgi --ini /root/django/hello/hello_uwsgi.ini & /usr/local/nginx/sbin/nginx

相關推薦

centos6.5配置django+uwsgi+nginx

本人系統使用的是cetos6.5,python版本為3.5 安裝django 可利用如下命令列安裝 pip install django 預設會安裝到python目錄下的bin資料夾下,如下圖所示 如果已經設定了python3.5環境

Centos 7 部署Django + uWSGI + Nginx

http turn 添加 enabled def -i 修改 tgz gdbm 1、廢話 之前利用Django寫了些測試工具,一直是直接 python manage.py runserver 8081這麽來用的。用戶量不大,倒也不影響什麽。uWSGI+Nginx的性能肯定要

Centos7搭建Django+uWSGI+nginx基於python3

def .tar.gz nts sse soc pycha make 啟動 share 1.電腦環境 Centos7 + python3.6 + virtualenv 由於centos自帶的是python2.7版本,所以要自己安裝新的版本,這裏就不對此描述了,直接開工

Elam的caffe筆記之配置篇(四):Centos6.5配置anaconda3

Elam的caffe筆記之配置篇(四):Centos6.5下配置anaconda3 配置要求: 系統:centos6.5 目標:基於CUDA8.0+Opencv3.1+Cudnnv5.1+python3.6介面的caffe框架 放棄了相容性最好的2.7版本,準備配置

Ubuntu環境部署Django+uwsgi+nginx總結

## 前言 這是我在搭建Django專案時候的過程,拿來總結記錄,以備不時之需。 專案採用nginx+uwsgi的搭配方式。 專案依賴包採用`requirements.txt`檔案管理的方式。 ## 本地準備工作 1. 確認專案能夠執行起來,沒有`bug` 2. 將當前環境的包匯出 `pip fre

CentOS6.5 Nginx 的安裝與配置

ffffff style 指定 this load() 應用 case 編譯 $? 昨天買了個服務器最近在配置一些基礎環境,想在訪問www.wzpbk.com:8080 不想要後面的:8080就能直接訪問到,聽說了Nginx就研究下給服務器裝上傳說中大名鼎鼎 Ng

Nginxcentos6.5的安裝和反向代理簡單配置

 檢視linux的版本資訊: lsb_release -a 1.首先解除安裝原有的nginx: yum remove nginx 2.安裝nginx在內網的centos6.5伺服器192.168.200.123上: yum install nginx 3.執行ngi

Centos6.5DHCP服務器的安裝和配置

默認 聲明 網絡 grep eve install 廣播 6.0 lan 1、首先需要安裝DHCP的軟件包,使用yum進行安裝 # yum install -y dhcp.x86_64 dhcp-devel.x86_64 2、將/usr/share/doc/dhcp-4.

CentOS6.5nginx安裝

模塊 pcre acc .cn nginx fig 啟動服務 tab start 一、nginx安裝環境 1、Gcc rpm -qa | grep gcc 安裝nginx需要先將官網下載的源碼進行編譯,編譯依賴gcc環境,如果沒有gcc環境,需要

mysql + Python3.5.2 + Django + Uwsgi + Nginx實現生產環境

ast 配置 static var pst ads sgi 服務 關閉進程 官方文檔:http://uwsgi-docs-zh.readthedocs.io/zh_CN/latest/tutorials/Django_and_nginx.html前面已經安裝好mysql數據

記錄Centos6.5安裝vsftp服務及配置文件說明

linux 運維 vsftp 參考文章:http://blog.csdn.net/zwhfyy/article/details/1547454 http://www.linuxidc.com/Linux/2015-06/118442.htmvsftp 的優點:除了安全、高速、穩定之外,vsftpd

redis---在CentOS6.5安裝與配置

eas 相關 var 可選 tro rip 持久 exec TP 本文詳細介紹redis單機單實例安裝與配置,服務及開機自啟動。如有不對的地方,歡迎大家拍磚o(∩_∩)o (以下配置基於CentOS release 6.5 Final, redis版本3.0.2 [redi

centos7部署Djangonginx+uWSGI+Python3+Django)

sbin socket `` onf upload SQ fig 目錄 down 部署代碼後uWSGI需要重新啟動,關閉系統防火墻或者開放端口 系統版本:CentOS7.0 Python版本:Python3.6.3 Django版本:2.0.5 uWSGI版本:2.0

CentOS7部署Python3+Django+uwsgi+Nginx

ade pen centos 編寫 b- mark pre 命令行 entos 1,首先在部署項目時,需要安裝好系統的環境,那我們首先來安裝依賴yum -y install gcc gcc-c++yum -y groupinstall “Development tool

centos7部署Djangonginx+uwsgi+django+python3)

參考文獻: https://blog.csdn.net/anifans9350/article/details/80145535 https://www.cnblogs.com/dalanjing/p/8636338.html   0.安裝步驟預覽(1)系統預設自帶python2.x,所以需

Elam的caffe筆記之配置篇(六):Centos6.5編譯caffe及caffe的python3.6介面

Elam的caffe筆記之配置篇(六):Centos6.5下編譯caffe及caffe的python3.6介面 配置要求: 系統:centos6.5 目標:基於CUDA8.0+Opencv3.1+Cudnnv5.1+python3.6介面的caffe框架 綜合來說,caf

nginx + tomcat 8.5 優化配置,安裝nginxcentos6、7】

第一步安裝 軟體 1.1 依賴包 # yum -y install gcc # yum install expat-devel # sudo yum install  zlib-devel 到http://apr.apache.org/download.cgi#apr1這

Centos6.5Tomcat安裝及配置

tsp watermark ext name mode export f2c images centos6 一、安裝前準備 安裝Tomcat需要提供JDK支持 下載JDK安裝包 #wget https://download.oracle.com/otn-pub/java/j

centos6.5redis的安裝與配置心得

$ wget http://download.redis.io/releases/redis-3.2.9.tar.gz $ tar xzf redis-3.2.9.tar.gz $ cd redis-3.2.9 $ make 或者 make install PREFIX=安裝目錄上述流程依次代表,下載r

UbuntuDjango+uWSGI+nginx部署

本文采用uwsgi+nginx來部署django 這種方式是將nginx作為服務端前端,將接受web所有的請求,統一管理,Nginx把所有的靜態請求自己處理,然後把所有非靜態請求通過uwsgi傳遞給Django,由Django來處理,從而完成一次web請求。 uwsgi pip3 ins