Nginx 配置文件主要分成四部分:main(全局設置)、http(HTTP 的通用設置)、server(虛擬主機設置)、location(匹配 URL 路徑)。還有一些其他的配置段,如 event,upstream 等。
通用設置
user nginx
指定運行 nginx workre 進程的用戶和組
worker_rlimit_nofile #
指定所有 worker 進程能夠打開的最大文件數
worker_cpu_affinity
設置 worker 進程的 CPU 粘性,以避免進程在 CPU 間切換帶來的性能消耗。如 worker_cpu_affinity 0001 0010 0100 1000;(四核)
worker_processes 4
worker 工作進程的個數,這個值可以設置為與 CPU 數量相同,如果開啟了 SSL 和 Gzip,那么可以適當增加此數值
worker_connections 1000
單個 worker 進程能接受的最大并發連接數,放在 event 段中
error_log logs/error.log info
錯誤日志的存放路徑和記錄級別
use epoll
使用 epoll 事件模型,放在 event 段中
http 服務器
server {}:
定義一個虛擬主機
listen 80;
定義監聽的地址和端口,默認監聽在本機所有地址上
server_name NAME [...];
定義虛擬主機名,可以使用多個名稱,還可以使用正則表達式或通配符。
sendfile on
開啟 sendfile 調用來快速的響應客戶端
keepalive_timeout 65
長連接超時時間,單位是秒。
send_timeout
指定響應客戶端的超時時間
client_max_body_size 10m
允許客戶端請求的實體最大大小
root PATH
設置請求 URL 所對應資源所在文件系統上的根目錄
location [ = | ~ | ~* | ^~ ] URI { ... }
設置一個 URI 匹配路徑
allow 和 deny
基于 IP 訪問控制,如:
僅允許 192.168.0.0/24 網段客戶端訪問
allow 192.168.0.0/24;deny all;
stub_status on
新聞熱點
疑難解答