整理了nginx的相關(guān)資料铡俐,包括
- 基本配置
- 負(fù)載均衡
- 常用操作命令
基本配置
nginx.conf凰兑,有注釋
http://www.reibang.com/p/d1ec1f38d80e
總結(jié)一下:
- 整個(gè)配置文件的結(jié)構(gòu)就是
worker_processes 1;
events {
worker_connections 1024;
}
http {
upstream xxx {
}
server {
}
server {
}
}
- 一臺(tái)服務(wù)器有多人使用的話,使用一個(gè)配置文件不太好审丘,可以改成下面這樣的結(jié)構(gòu)
worker_processes 1;
events {
worker_connections 1024;
}
http {
include /your_path/your_path/*.conf
}
之后在 /your_path/you_path/ 分別建立不同項(xiàng)目的配置文件吏够,如 project1.conf,其內(nèi)容是:
upstream xxx {
}
server {
}
- 使用不同的Web Server時(shí)滩报,server模塊的寫(xiě)法不一樣锅知,需要參考對(duì)應(yīng)的官方文檔,flask+gunicorn的寫(xiě)法與前面文檔一致脓钾,如果是django+uwsgi的話喉镰,寫(xiě)法會(huì)是
upstream django {
server 127.0.0.1:8000;
}
server {
listen 80;
server_name xxx.com;
...
# 不同點(diǎn)在這里
location / {
uwsgi_pass: django;
include /yourpath/uwsgi_params;
}
}
負(fù)載均衡
有些服務(wù)需要部署于多臺(tái)服務(wù)器,以使處理速度更快惭笑,其中一種簡(jiǎn)單的實(shí)現(xiàn)方式,就是配置nginx生真,實(shí)現(xiàn)請(qǐng)求的轉(zhuǎn)發(fā)沉噩。配置的方法在上面基本配置的文檔中已有,在此摘出來(lái)再看一下
#首先定義upstream
upstream upstream_name {
#upstream的負(fù)載均衡柱蟀,weight是權(quán)重川蒙,可以根據(jù)機(jī)器配置定義權(quán)重
#weight參數(shù)表示權(quán)值,權(quán)值越高被分配到的幾率越大长已。
server 192.16.10.23:8080 weight=3;
server 192.16.10.23:7070 weight=4;
server 192.16.10.43:7070 weight=3;
}
#server的配置
server {
#監(jiān)聽(tīng)端口
listen 80;
#域名可以有多個(gè)畜眨,用空格隔開(kāi)
server_name www.yourwebsite.com yourwebsite.com;
#對(duì) "/" 啟用反向代理,用戶訪問(wèn)我們的網(wǎng)站時(shí)术瓮,就會(huì)被分發(fā)到upstream中的服務(wù)器處理
location / {
proxy_pass http://upstream_name;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
}
}
常用操作命令
查看版本信息
cd */nginx/sbin
./nginx -v
啟動(dòng)nginx
cd /usr/local/nginx/sbin/
sudo ./nginx
也可以指定配置文件
sudo ./nginx -c /usr/local/nginx/conf/nginx.conf
查看進(jìn)程
ps -ef | grep nginx
kill進(jìn)程
從容停止
kill -QUIT PID(進(jìn)程號(hào))
快速停止
kill -TERM PID
kili -INT PID
強(qiáng)制停止
pkill -g nginx
驗(yàn)證配置文件是否正確
cd /usr/local/nginx/sbin/
./nginx -t
nginx 重啟
方法一:
cd /usr/local/nginx/sbin/
./nginx -s reload
方法二:
kill -HUP PID
驗(yàn)證配置文件.png