nginx是一個輕量級的反向代理伺服器,收到很多開發者的喜愛。下面介紹一下nginx的的配置。
方法/步驟
【nginx.conf基本組成】:
xxxxx
events
{
xxxxx
}
http
{
xxxxx
server
{
xxxxx
}
server
{
xxxxx
}
xxxxx
}
【頭部】:user-是nginx程序使用者名稱;worker_processes-是nginx工作程序數量,建議設定為cpu核心數量的2倍;pid-是nginx程序pid的存放檔案。
【events部分】:worker_connections是每個工作程序允許最大的同時連線數 量。
【http部分】:主要是server虛擬主機部分的配置。以下詳細講解。
【nginx虛擬主機】:
server
{
listen 埠;
server_name 192.168.1.166;
......
}
server_name可以是ip地址也可以是域名,可以新增多個用空格分開。
【日誌格式設定和路徑】:
og_format設定日誌格式
log_format name format [format ...]
name:定義格式名稱
format:定義格式樣式
預設格式:combined '$remote_addr - $remote_user [$time_local]' '"$request" $status $body_bytes_sent ' '"$http_referer" "$http_user_agent"';
access_log 指定日誌檔案存放路徑
access_log path [format [buffer=size off]]
path:檔案存放路徑
format:log_format定義格式的名稱
buffer:記憶體緩衝區大小
使用預設格式:access_log path;
使用緩衝加速日誌檔案讀寫:
open_log_file_cache max=N [inactive=time] [min_uses=N] [valid=time] off(預設)
max:快取最大檔案描述符數量,超過使用LRU演算法淘汰
inactive:在inactive指定時間內檔案描述符沒有被使用則被自動刪除,預設10秒
min_uses:在inactive指定時間內,檔案描述符超過min_uses使用次數,則加入快取,預設1
valid:檢視變數指定的日誌檔案路徑與檔案是否存在的時間間隔,預設60秒
【壓縮輸出】:
gzip壓縮後變為原來的<=30%
配置:
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml;
gzip_vary on;
【自動列出目錄和location】:
location / {
autoindex on;開啟自動列出目錄
autoindex_exact_size [on off] 索引檔案大少單位(B KB MB GB)
autoindex_localtime [on off] 開啟本地時間顯示檔案時間
}
【瀏覽器本地快取】:
expires [time epoch max off]
time 時間值 負數不快取
epoch 設定為1 january,1970, 00:00:01 GMT
max 設定為 31 December 2037 23:59:59 GMT
【php fastcgi】:
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
include fastcgi_params;
}