日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

定義Nginx運行的用戶和用戶組

user www www;

進程數

建議設置為等于CPU總核心數。

worker_processes 8;

全局錯誤日志

全局錯誤日志定義類型,[ debug | info | notice | warn | error | crit ]

error_log /var/log/nginx/error.log info;

進程文件

pid /var/run/nginx.pid;

打開的最多文件描述符

一個nginx進程打開的最多文件描述符數目,理論值應該是最多打開文件數(系統的值ulimit -n)與nginx進程數相除,但是nginx分配請求并不均勻,所以建議與ulimit -n的值保持一致。

worker_rlimit_nofile 65535;

event

單個進程最大連接數

并發總數是 worker_processes 和 worker_connections 的乘積

即 max_clients = worker_processes * worker_connections

在設置了反向代理的情況下,max_clients = worker_processes * worker_connections / 4 為什么 為什么上面反向代理要除以4,應該說是一個經驗值根據以上條件,正常情況下的Nginx Server可以應付的最大連接數為:4 * 8000 = 32000worker_connections 值的設置跟物理內存大小有關

因為并發受IO約束,max_clients的值須小于系統可以打開的最大文件數

工作模式與連接數上限

events {

參考事件模型,use [ kqueue | rtsig | epoll | /dev/poll | select | poll ]; epoll模型是linux 2.6以上版本內核中的高性能網絡I/O模型,如果跑在FreeBSD上面,就用kqueue模型。

use epoll;

單個進程最大連接數(最大連接數=連接數*進程數)

worker_connections 65535;

}

查看可以打開的文件句柄數是多少

cat /proc/sys/fs/file-max

并發連接總數小于系統可以打開的文件句柄總數,這樣就在操作系統可以承受的范圍之內

所以,worker_connections 的值需根據 worker_processes 進程數目和系統可以打開的最大文件總數進行適當地進行設置,使得并發總數小于操作系統可以打開的最大文件數目,其實質也就是根據主機的物理CPU和內存進行配置

查看系統限制 ulimit -a

打開文件句柄數量限制

是Linux操作系統對一個進程打開的文件句柄數量的限制(也包含打開的SOCKET數量,可影響MySQL的并發連接數目)

系統總限制: /proc/sys/fs/file-max

當前使用句柄數:/proc/sys/fs/file-nr

修改句柄數:ulimit -SHn 65535

http

include mime.types; #文件擴展名與文件類型映射表

default_type Application/octet-stream; #默認文件類型

charset utf-8; #默認編碼

client_header_buffer_size 32k; #上傳文件大小限制

sendfile

sendfile on; 開啟高效文件傳輸模式

sendfile指令指定nginx是否調用sendfile函數來輸出文件,對于普通應用設為 on,如果用來進行下載等應用磁盤IO重負載應用,可設置為off,以平衡磁盤與網絡I/O處理速度,降低系統的負載。注意:如果圖片顯示不正常把這個改成off。

sendfile()還能夠用來在兩個文件夾之間移動數據

tcp_nopush 在linux/Unix系統中優化tcp數據傳輸,僅在sendfile開啟時有效

autoindex on;#開啟目錄列表訪問,合適下載服務器,默認關閉。

keepalive_timeout 120;#長連接超時時間,單位是秒

gzip

gzip on; 開啟gzip壓縮輸出

gzip_min_length 1k; 設置允許壓縮的頁面最小字節數

頁面字節數從header頭得content-length中進行獲取。默認值是0,不管頁面多大都壓縮。建議設置成大于2k的字節數,小于2k可能會越壓越大。

gzip_buffers 4 16k; 設置系統獲取幾個單位的緩存用于存儲gzip的壓縮結果數據流。

例如 4 4k 代表以4k為單位,按照原始數據大小以4k為單位的4倍申請內存。 4 8k 代表以8k為單位,按照原始數據大小以8k為單位的4倍申請內存。 如果沒有設置,默認值是申請跟原始數據相同大小的內存空間去存儲gzip壓縮結果。

gzip_http_version 1.0;壓縮版本(默認1.1,前端如果是squid2.5請使用1.0)

gzip_comp_level 2; 壓縮級別,1-10,數字越大壓縮的越好,也越占用CPU時間

gzip_types text/plain application/x-JAVAscript text/css application/xml; 壓縮類型

默認就已經包含text/html,所以下面就不用再寫了,寫上去也不會有問題,但是會有一個warn。

默認值: gzip_types text/html (默認不對js/css文件進行壓縮)

壓縮類型,匹配MIME類型進行壓縮

設置哪壓縮種文本文件可參考 conf/mime.types

gzip_disable "MSIE [1-6].";E6及以下禁止壓縮

gzip_vary on;給CDN和代理服務器使用,針對相同url,可以根據頭信息返回壓縮和非壓縮副本

server

listen 80; 監聽端口

server_name www.fangzy.me; 域名可以有多個,用空格隔開

charset koi8-r; 編碼集

日志相關
access_log "pipe:rollback logs/host.access_log interval=1d baknum=7 maxsize=2G" main;

root /data; 主目錄

index index.html; 默認頁

虛擬主機

虛擬主機是一種特殊的軟硬件技術,它可以將網絡上的每一臺計算機分成多個虛擬主機,每個虛擬主機可以獨立對外提供www服務,這樣就可以實現一臺主機對外提供多個web服務,每個虛擬主機之間是獨立的,互不影響的

通過nginx可以實現虛擬主機的配置,nginx支持三種類型的虛擬主機配置

  • 基于ip的虛擬主機, (一塊主機綁定多個ip地址)
  • 基于域名的虛擬主機(servername)
  • 基于端口的虛擬主機(listen如果不寫ip端口模式)

http

server {

表示一個虛擬主機

}

}

location

映射/虛擬目錄

location = / {
[ configuration A ]
}
?
location / {
[ configuration B ]
}
?
location /documents/ {
[ configuration C ]
}
?
location ^~ /images/ {
[ configuration D ]
}
?
location ~* .(gif|jpg|jpeg)$ {
[ configuration E ]
}

location [ = | ~ | ~* | ^~ ] uri { ... }

location URI {} 對當前路徑及子路徑下的所有對象都生效;

location = URI {} 注意URL最好為具體路徑。 精確匹配指定的路徑,不包括子路徑,因此,只對當前資源生效;

location ~ URI {} location ~* URI {} 模式匹配URI,此處的URI可使用正則表達式,~區分字符大小寫,~*不區分字符大小寫;

location ^~ URI {} 禁用正則表達式

優先級:= > ^~ > ~|~* > /|/dir/

location配置規則

location 的執行邏輯跟 location 的編輯順序無關。 矯正:這句話不全對,“普通 location ”的匹配規則是“最大前綴”,因此“普通 location ”的確與 location 編輯順序無關;

但是“正則 location ”的匹配規則是“順序匹配,且只要匹配到第一個就停止后面的匹配”;

“普通location ”與“正則 location ”之間的匹配順序是?先匹配普通 location ,再“考慮”匹配正則 location 。

注意這里的“考慮”是“可能”的意思,也就是說匹配完“普通 location ”后,有的時候需要繼續匹配“正則 location ”,有的時候則不需要繼續匹配“正則 location ”。兩種情況下,不需要繼續匹配正則 location :

  • ( 1 )當普通 location 前面指定了“ ^~ ”,特別告訴 Nginx 本條普通 location 一旦匹配上,則不需要繼續正則匹配;
  • ( 2 )當普通location 恰好嚴格匹配上,不是最大前綴匹配,則不再繼續匹配正則

IP訪問控制

location {

deny IP /IP段

deny 192.168.1.109;

allow 192.168.1.0/24;192.168.0.0/16;192.0.0.0/8

}

用戶認證訪問

模塊ngx_http_auth_basic_module 允許使用“HTTP基本認證”協議驗證用戶名和密碼來限制對資源的訪問

location ~ (.*).avi$ {

auth_basic "closed site";

auth_basic_user_file conf/users;

}

賬號密碼通過httpd-tools配置

yum install httpd

htpasswd -c -d /usr/local/users zhangyang

nginx訪問狀態監控

location /basic_status {

stub_status on;

}

反向代理

通常的代理服務器,只用于代理內部網絡對Internet的連接請求,客戶機必須指定代理服務器,并將本來要直接發送到Web服務器上的http請求發送到代理服務器中由代理服務器向Internet上的web服務器發起請求,最終達到客戶機上網的目的。

反向代理(Reverse Proxy)方式是指以代理服務器來接受internet上的連接請求,然后將請求轉發給內部網絡上的服務器,并將從服務器上得到的結果返回給internet上請求連接的客戶端,此時代理服務器對外就表現為一個反向代理服務器

location /basic_status {

proxy_pass http://localhost/

}

 

Nginx配置解析整理

 

upstream

反向代理配合upstream使用

upstream httpds {

server 192.168.43.152:80;

server 192.168.43.153:80;

}

weight(權重)

指定輪詢幾率,weight和訪問比率成正比,用于后端服務器性能不均的情況。

upstream httpds {

server 127.0.0.1:8050 weight=10 down;

server 127.0.0.1:8060 weight=1;

server 127.0.0.1:8060 weight=1 backup;

}

  • down:表示當前的server暫時不參與負載
  • weight:默認為1.weight越大,負載的權重就越大。
  • backup: 其它所有的非backup機器down或者忙的時候,請求backup機器。

max_conns

可以根據服務的好壞來設置最大連接數,防止掛掉,比如1000,我們可以設置800

upstream httpds {

server 127.0.0.1:8050 weight=5 max_conns=800;

server 127.0.0.1:8060 weight=1;

}

max_fails、 fail_timeout

max_fails:失敗多少次 認為主機已掛掉則,踢出,公司資源少的話一般設置2~3次,多的話設置1次

max_fails=3 fail_timeout=30s代表在30秒內請求某一應用失敗3次,認為該應用宕機,后等待30秒,這期間內不會再把新請求發送到宕機應用,而是直接發到正常的那一臺,時間到后再有請求進來繼續嘗試連接宕機應用且僅嘗試1次,如果還是失敗,則繼續等待30秒...以此循環,直到恢復。

upstream httpds {

server 127.0.0.1:8050 weight=1 max_fails=1 fail_timeout=20;

server 127.0.0.1:8060 weight=1;

}

負載均衡算法

輪詢、 weight、 ip_hash、 url_hash、 least_conn、 least_time

健康檢查模塊

配置一個status的location

location /status {

check_status;

}

在upstream配置如下

check interval=3000 rise=2 fall=5 timeout=1000 type=http;

check_http_send "HEAD / HTTP/1.0rnrn";

check_http_expect_alive http_2xx http_3xx;

分享到:
標簽:配置 Nginx
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定