這篇文章詳解nginx基本配置與參數
user nobody;
#啟動進程,通常設定成和cpu的數量相等
worker_processes 1;
#全域錯誤日誌及PID檔
#error_loglogs/error.log;
#error_log logs/error.log notice;
error_log logs/error.log notice;
#error_log logs/error.log info;
模式與連線數上限
模式 #epoll是多路復用IO(I/O Multiplexing)中的一種方式, #僅用於linux
2.6以上核心,可以大幅提升nginx的效能###### use epoll; ###### #單一後台worker process進程的最大同時連結數 ###### 問題worker_processes 與worker_connections 的乘積###### # 即max_clients = worker_processes * worker_connections###### # 在設定了反向代理人為什麼上面反向代理人要除以4,應該說是一個經驗值###### # 根據上述條件,正常情況下的Nginx Server可以應付的最大連線數為:4 * 8000 = 32000#### ## # worker_connections 值的設定跟物理記憶體大小有關###### # 因為並發受IO###限制###,max_clients的值須小於系統可以開啟的最大檔案數###### #而係統可以開啟的最大檔案數和記憶體大小成正比,一般1GB記憶體的機器上可以開啟的檔案數大約是10萬左右###### # 我們來看看360M記憶體的VPS可以開啟的檔案句柄數字是多少:###### # $ cat /proc/sys/fs/###file###-max###### # 輸出34336###### # 32000 < 34336,即並發連接總數小於系統可以開啟的檔案句柄總數,這樣就在作業系統可以承受的範圍之內###### # 所以,worker_connections 的值需根據worker_processes 進程數目和系統可以開啟的最大檔案總數進行適當地進行設定###### # 使得並發總數小於作業系統可以開啟的最大檔案數目###### # 其實質也就是根據主機的實體CPU和記憶體進行設定###### #當然,理論上的並發總數可能會和實際上有所偏差,因為主機還有其他的工作流程需要消耗系統資源。 ###### # ulimit -SHn 65535######}######http {###### #設定mime類型,類型由mime.type檔案###定義## ####### ###include### mime.types;###### default_type application/octet-stream;###### #設定日誌格式####o # ## ##for###mat ###main### '$remote_addr - $remote_user [$###time###_local] "$request" '###### body_$m. " '###### '"$http_user_agent" "$http_x_forwarded_for"';###access_log logs/access.log main;
#sendfile 指令指定nginx 是否呼叫sendfile函數(zerocopy方式)來輸出文件,
#對於普通應用,必須設為on,
#如果用來進行下載等應用磁碟IO重負載應用,可設定為off,
#以平衡磁碟與網路I/O處理速度,降低系統的uptime.
sendfile on;
#tcp_nopush on;
#tcp_nopush ” #連線逾時時間
#keepalive_timeout 0;
keepalive_timeout 65;
tcp_nodelay on;
# gzip on; gzip_disable "MSIE [1-6].";# gzip_disable "MSIE [1-6].";
#設定請求緩衝 client_header_buffer_# client_
er_buffer_# 128k;
large_client_header_buffers 4 128k;
#設定虛擬主機設定
server {
##設定
server {## ###
listen 80;
#定義使用www.nginx.cn造訪
1 server_name定義
服務器的預設網站根目錄位置
root html;
#設定本虛擬主機的存取日誌access_log acc access.log main;
#預設請求
location / {
.php index.html index.htm;
}
# 定義錯誤提示頁
50page location = /50x.html {
#靜態文件,nginx自己處理location ~ ^/(images | ##|js|css|flash|media|static)/ {
#過期30天,靜態檔案不如何更新
# #如果經常更新,則可設定小一點。
expires 30d;
}
## #PHP 腳本要求全部轉送至FastGI 處理.# 一天## fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILEN被fastcgi_params;}
# #禁止存取.htxxx 檔案
location ~ /.ht {
deny
all;# ##
}以上是詳解nginx基本配置與參數的詳細內容。更多資訊請關注PHP中文網其他相關文章!