socket
uwsgi監(jiān)聽的socket,可以為socket文件或ip地址+端口號
socket = /www/wwwroot/web/script/uwsgi.sock
socket = :8080
用nginx的時候就配socket , 直接運行的時候配 http
指定IP端口 // 直接外部訪問
http-socket = 127.0.0.1:8080
chadir
指定項目的目錄,在app加載前切換到當(dāng)前目錄
module
指定項目的application,加載指定的python WSGI模塊(模塊路徑必須在PYTHONPATH里)
master
相當(dāng)于master=true慕购,啟動一個master進(jìn)程來管理其他進(jìn)程洲胖,以上述配置為例琼稻,其中的4個uwsgi進(jìn)程都是這個master進(jìn)程的子進(jìn)程脯丝,如果kill這個master進(jìn)程商膊,相當(dāng)于重啟所有的uwsgi進(jìn)程
processes
開啟的進(jìn)程數(shù)量(和worker作用相同)
uwsgi啟動用戶名和用戶組
uid = www
gid = www
進(jìn)程個數(shù)
processes = 5
pidfile = /www/wwwroot/web/script/uwsgi.pid
vacuum
自動移除unix Socket 和 Pid 文件 當(dāng)服務(wù)停止的時候
vacuum = true
thunder-lock
序列化接受的內(nèi)容,如果可能的話
thunder-lock = true
enable-threads
啟用線程
enable-threads = true
post-buffering
設(shè)置緩沖
post-buffering = 4096
static-map
設(shè)置靜態(tài)文件
static-map = /static=//www/wwwroot/mysite/static
daemonize
使進(jìn)程在后臺運行宠进,并將日志打到指定的日志文件或者udp服務(wù)器(不會影響nginx日志的輸出)
daemonize = /www/wwwroot/mysite/uwsgi.log
pythonpath
給PYTHONPATH 增加一個目錄(或者一個egg)晕拆,最多可以使用該選項64次。
pidfile
在失去權(quán)限前材蹬,將master的pid寫到當(dāng)前文件中
protocol
設(shè)置默認(rèn)的通信協(xié)議(uwsgi实幕,http,fastcgi)
harakiri
這個選項會設(shè)置harakiri超時時間(可以看wiki首頁的相關(guān)內(nèi)容)堤器。如果一個請求花費的時間超過了這個harakiri超時時間昆庇,那么這個請求都會被丟棄,并且當(dāng)前處理這個請求的工作進(jìn)程會被回收再利用(即重啟)闸溃。
buffer-size
設(shè)置用于uwsgi包解析的內(nèi)部緩存區(qū)大小整吆。默認(rèn)是4k。
如果你打算接受一個擁有很多請求頭的大請求辉川,你可以增加這個值到64k表蝙。
這個命令會允許uWSGI服務(wù)器接收最大為32k的uwsgi包,再大的包就會被拒絕乓旗。
chmod-socket or chmod
unix socket是個文件府蛇,所以會受到unix系統(tǒng)的權(quán)限限制。如果你的uwsgi客戶端沒有權(quán)限訪問uWSGI socket屿愚,你可以用這個選項設(shè)置unix socket的權(quán)限汇跨。
當(dāng)在xml配置文件中只是用這個選項作為一個標(biāo)識符,那么會將權(quán)限設(shè)為666妆距,否則就是設(shè)置為指定的權(quán)限值穷遂。
chmod-socket = 755
auto-procname
這個選項將自動給uWSGI的進(jìn)程設(shè)置一些有意義的名字,例如“uWSGI master”娱据, “uWSGI worker 1”塞颁, “uWSGI worker 2”。
socket-timeout
為所有的socket操作設(shè)置內(nèi)部超時時間(默認(rèn)4秒)吸耿。
這個配置會結(jié)束那些處于不活動狀態(tài)超過10秒的連接祠锣。