Nginx的nginx.conf配置文件中文注释说明
?#運行用戶
??? user www-data;????
??? #啟動進程,通常設置成和cpu的數量相等
??? worker_processes? 1;
??? #全局錯誤日志及PID文件
??? error_log? /var/log/nginx/error.log;
??? pid??????? /var/run/nginx.pid;
??? #工作模式及連接數上限
??? events {
??????? use?? epoll;???????????? #epoll是多路復用IO(I/O Multiplexing)中的一種方式,但是僅用于linux2.6以上內核,可以大大提高nginx的性能
??????? worker_connections? 1024;#單個后臺worker process進程的最大并發鏈接數
??????? # multi_accept on;?
??? }
??? #設定http服務器,利用它的反向代理功能提供負載均衡支持
??? http {
???????? #設定mime類型,類型由mime.type文件定義
??????? include?????? /etc/nginx/mime.types;
??????? default_type? application/octet-stream;
??????? #設定日志格式
??????? access_log??? /var/log/nginx/access.log;
??????? #sendfile 指令指定 nginx 是否調用 sendfile 函數(zero copy 方式)來輸出文件,對于普通應用,
??????? #必須設為 on,如果用來進行下載等應用磁盤IO重負載應用,可設置為 off,以平衡磁盤與網絡I/O處理速度,降低系統的uptime.
??????? sendfile??????? on;
??????? #tcp_nopush???? on;
??????? #連接超時時間
??????? #keepalive_timeout? 0;
??????? keepalive_timeout? 65;
??????? tcp_nodelay??????? on;
??????? #開啟gzip壓縮
??????? gzip? on;
??????? gzip_disable "MSIE [1-6]\.(?!.*SV1)";
??????? #設定請求緩沖
??????? client_header_buffer_size??? 1k;
??????? large_client_header_buffers? 4 4k;
??????? include /etc/nginx/conf.d/*.conf;
??????? include /etc/nginx/sites-enabled/*;
??????? #設定負載均衡的服務器列表
???????? upstream mysvr {
??????? #weigth參數表示權值,權值越高被分配到的幾率越大
??????? #本機上的Squid開啟3128端口
??????? server 192.168.8.1:3128 weight=5;
??????? server 192.168.8.2:80? weight=1;
??????? server 192.168.8.3:80? weight=6;
??????? }
?????? server {
??????? #偵聽80端口
??????????? listen?????? 80;
??????????? #定義使用www.xx.com訪問
??????????? server_name? www.xx.com;
??????????? #設定本虛擬主機的訪問日志
??????????? access_log? logs/www.xx.com.access.log? main;
??????? #默認請求
??????? location / {
????????????? root?? /root;????? #定義服務器的默認網站根目錄位置
????????????? index index.php index.html index.htm;?? #定義首頁索引文件的名稱
????????????? fastcgi_pass? www.xx.com;
???????????? fastcgi_param? SCRIPT_FILENAME? $document_root/$fastcgi_script_name;?
????????????? include /etc/nginx/fastcgi_params;
??????????? }
??????? # 定義錯誤提示頁面
??????? error_page?? 500 502 503 504 /50x.html;??
??????????? location = /50x.html {
??????????? root?? /root;
??????? }
??????? #靜態文件,nginx自己處理
??????? location ~ ^/(images|javascript|js|css|flash|media|static)/ {
??????????? root /var/www/virtual/htdocs;
??????????? #過期30天,靜態文件不怎么更新,過期可以設大一點,如果頻繁更新,則可以設置得小一點。
??????????? expires 30d;
??????? }
??????? #PHP 腳本請求全部轉發到 FastCGI處理. 使用FastCGI默認配置.
??????? location ~ \.php {
??????????? root /root;
??????????? fastcgi_pass 127.0.0.1:9000;
??????????? fastcgi_index index.php;
??????????? fastcgi_param SCRIPT_FILENAME /home/www/www$fastcgi_script_name;
??????????? include fastcgi_params;
??????? }
??????? #設定查看Nginx狀態的地址
??????? location /NginxStatus {
??????????? stub_status??????????? on;
??????????? access_log????????????? on;
??????????? auth_basic????????????? "NginxStatus";
??????????? auth_basic_user_file? conf/htpasswd;
??????? }
??????? #禁止訪問 .htxxx 文件
??????? location ~ /\.ht {
??????????? deny all;
??????? }
?????????
???????? }
??? }
?
以上是一些基本的配置,使用Nginx最大的好處就是負載均衡
如果要使用負載均衡的話,可以修改配置http節點如下:
?
??? #設定http服務器,利用它的反向代理功能提供負載均衡支持
??? http {
???????? #設定mime類型,類型由mime.type文件定義
??????? include?????? /etc/nginx/mime.types;
??????? default_type? application/octet-stream;
??????? #設定日志格式
??????? access_log??? /var/log/nginx/access.log;
?
??????? #省略上文有的一些配置節點
?
??????? #。。。。。。。。。。
?
??????? #設定負載均衡的服務器列表
???????? upstream mysvr {
??????? #weigth參數表示權值,權值越高被分配到的幾率越大
??????? server 192.168.8.1x:3128 weight=5;#本機上的Squid開啟3128端口
??????? server 192.168.8.2x:80? weight=1;
??????? server 192.168.8.3x:80? weight=6;
??????? }
?
?????? upstream mysvr2 {
??????? #weigth參數表示權值,權值越高被分配到的幾率越大
?
??????? server 192.168.8.x:80? weight=1;
??????? server 192.168.8.x:80? weight=6;
??????? }
?
?????? #第一個虛擬服務器
?????? server {
??????? #偵聽192.168.8.x的80端口
??????????? listen?????? 80;
??????????? server_name? 192.168.8.x;
?
????????? #對aspx后綴的進行負載均衡請求
??????? location ~ .*\.aspx$ {
?
???????????? root?? /root;????? #定義服務器的默認網站根目錄位置
????????????? index index.php index.html index.htm;?? #定義首頁索引文件的名稱
?
????????????? proxy_pass? http://mysvr ;#請求轉向mysvr 定義的服務器列表
?
????????????? #以下是一些反向代理的配置可刪除.
?
????????????? proxy_redirect off;
?
????????????? #后端的Web服務器可以通過X-Forwarded-For獲取用戶真實IP
????????????? proxy_set_header Host $host;
????????????? proxy_set_header X-Real-IP $remote_addr;
????????????? proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
????????????? client_max_body_size 10m;??? #允許客戶端請求的最大單文件字節數
????????????? client_body_buffer_size 128k;? #緩沖區代理緩沖用戶端請求的最大字節數,
????????????? proxy_connect_timeout 90;? #nginx跟后端服務器連接超時時間(代理連接超時)
????????????? proxy_send_timeout 90;??????? #后端服務器數據回傳時間(代理發送超時)
????????????? proxy_read_timeout 90;???????? #連接成功后,后端服務器響應時間(代理接收超時)
????????????? proxy_buffer_size 4k;???????????? #設置代理服務器(nginx)保存用戶頭信息的緩沖區大小
????????????? proxy_buffers 4 32k;?????????????? #proxy_buffers緩沖區,網頁平均在32k以下的話,這樣設置
????????????? proxy_busy_buffers_size 64k;??? #高負荷下緩沖大小(proxy_buffers*2)
????????????? proxy_temp_file_write_size 64k;? #設定緩存文件夾大小,大于這個值,將從upstream服務器傳
?
?????????? }
?
???????? }
??? }
轉載于:https://www.cnblogs.com/shanyongchen/p/6107423.html
總結
以上是生活随笔為你收集整理的Nginx的nginx.conf配置文件中文注释说明的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: codeforce 457DIV2 C题
- 下一篇: Hadoop官方文档翻译——MapRed