nginx搭建檔案伺服器
阿新 • • 發佈:2019-02-18
安裝省略,直接貼配置檔案:
#Nginx開啟的程序數
worker_processes 4;
#定義全域性錯誤日誌定義型別,[debug|info|notice|warn|crit]
error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#指定程序ID儲存檔案位置
#pid logs/nginx.pid;
#一個nginx程序開啟的最多檔案描述符數目,理論值應該是最多開啟檔案數(ulimit -n)與nginx程序數相除,但是nginx分配請求並不是那麼均勻,所以最好與ulimit -n的值保持一致
worker_rlimit_nofile 65535;
events {
#注意:最大客戶數也由系統的可用socket連線數限制(~ 64K)
worker_connections 5120;
}
http {
#副檔名與檔案型別對映表
include mime.types;
#預設檔案型別
default_type application/octet-stream;
#日誌相關定義
#log_format main '$remote_addr - $remote_user [$time_local] "$request"'
'$status $body_bytes_sent "$http_referer"'
'"$http_user_agent" "$http_x_forwarded_for"';
#定義日誌的格式。後面定義要輸出的內容
#1.$remote_addr 與$http_x_forwarded_for 用以記錄客戶端的ip地址;
#2.$remote_user :用來記錄客戶端使用者名稱稱;
#3.$time_local :用來記錄訪問時間與時區
#4.$request :用來記錄請求的url與http協議
#5.$status :用來記錄請求狀態
#6.$body_bytes_sent :記錄傳送給客戶端檔案主體內容大小
#7.$http_referer :用來記錄從那個頁面連結訪問過來的
#8.$http_user_agent :記錄客戶端瀏覽器的相關資訊
#連線日誌的路徑,指定的日誌格式放在最後
#access_log logs/access.log main;
#只記錄更為嚴重的錯誤日誌,減少IO壓力
#error_log logs/error.log crit;
#關閉日誌
#access_log off;
#預設編碼
charset utf-8;
#伺服器名字的hash表大小
#server_names_hash_bucket_size 128;
#客戶端請求單個檔案的最大位元組數
#client_max_body_size 8m;
#指定來自客戶端請求頭的hearerbuffer大小
#client_header_buffer_size 32k;
#指定客戶端請求中較大的訊息頭的快取最大數量和大小
#large_client_header_buffers 4 64k;
#開啟高效傳輸模式
sendfile on;
#防止網路阻塞
#tcp_nopush on;
#客戶端連線超時時間,單位是秒
keepalive_timeout 120;
#客戶端請求頭讀取超時時間
#client_header_timeout 10;
#設定客戶端請求主體讀取超時時間
#client_body_timeout 10;
#響應客戶端超時時間
#send_timeout 10;
#開啟gzip壓縮輸出
#gzip on;
#最小壓縮檔案大小
#gzip_min_length 1k;
#壓縮緩衝區
#gzip_buffers 4 16k;
#壓縮版本(預設1.1,前端如果是squid2.5請使用1.0)
#gzip_http_version 1.0;
#壓縮等級 1-9 等級越高,壓縮效果越好,節約寬頻,但CPU消耗大
#gzip_comp_level 2;
#虛擬主機定義
server {
listen 80;
server_name localhost;
#編碼格式,若網頁格式與此不同,將被自動轉碼
#charset utf-8;
#虛擬主機訪問日誌定義
#access_log logs/host.access.log main;
#對URL進行匹配
location / {
#訪問路徑,可相對也可絕對路徑
root /usr/local/nginx/html;
autoindex on;
autoindex_exact_size on;
autoindex_localtime on;
}
}
}