Nginx 主設定檔參數詳解

來源:互聯網
上載者:User

標籤:

Nginx 主設定檔參數詳解Nginx 安裝完畢後,會有響應的安裝目錄,安裝目錄裡 nginx.conf 為 nginx 的主設定檔, ginx 主設定檔分為 4 部分,main(全域配置)、server(主機設定)、upstream(負載平衡伺服器設)和 location(URL 匹配特定位置的設定),這四者關係為:server 繼承 main,location 繼承 server,upstream 既不會繼承其他設定也不會被繼承。一、Nginx 的 main(全域配置)檔案[[email protected] server]# vim /usr/local/nginx/conf/nginx.confusernginx nginx; //指定 nginx 啟動並執行使用者及使用者組為 nginx,預設為 nobodyworker_processes2; //開啟的進程數,一般跟邏輯 cpu 核心數一致error_log logs/error.log notice; //定於全域錯誤記錄檔檔案,層級以 notice 顯示。還有 debug、info、warn、error、crit 模式,debug 輸出最多,crit 輸出最少,更加實際環境而定。pidlogs/nginx.pid; //指定進程 id 的隱藏檔位置worker_rlimit_nofile 65535; //指定一個 nginx 進程開啟的最多檔案描述符數目,受系統進程的最大開啟檔案數量限制events {use epoll; 設定工作模式為 epoll,除此之外還有 select、poll、kqueue、rtsig 和/dev/poll 模式 worker_connections 65535; //定義每個進程的最大串連數 受系統進程的最大開啟檔案數量限制}[[email protected] server]# cat /proc/cpuinfo | grep "processor" | wc –l//查看邏輯 CPU 核心數[[email protected] server]# ulimit -n 65535//設定系統進程的最大開啟檔案數量二、Nginx 的 HTTP 伺服器配置,Gzip 配置。http {*****************************以下是 http 伺服器全域配置*********************************include mime.types; //主模組指令,實現對設定檔所包含的檔案的設定,可以減少主設定檔的複雜度,DNS 主設定檔中的 zonerfc1912,acl 基本上都是用的 include 語句default_typeapplication/octet-stream; //核心模組指令,這裡預設設定為二進位流,也就是當檔案類型未定義時使用這種方式//下面代碼為日誌格式的設定,main 為日誌格式的名稱,可自行設定,後面引用。log_format main ‘$remote_addr - $remote_user [$time_local] "$request" ‘ ‘$status $body_bytes_sent "$http_referer" ‘ ‘"$http_user_agent" "$http_x_forwarded_for"‘;access_log logs/access.log main; //引用日誌 main client_max_body_size 20m; //設定允許用戶端請求的最大的單個檔案位元組數client_header_buffer_size 32k; //指定來自用戶端要求標頭的 headebuffer 大小 client_body_temp_path /dev/shm/client_body_temp; //指定串連請求試圖寫入快取檔案的目錄路徑 large_client_header_buffers 4 32k; //指定用戶端請求中較大的訊息頭的緩衝最大數量和大小,目前設定為 4 個 32KBsendfileon; //開啟高效檔案傳輸模式tcp_nopushon; //開啟防止網路阻塞tcp_nodelayon; //開啟防止網路阻塞keepalive_timeout 65; //設定用戶端串連儲存活動的逾時時間 client_header_timeout 10; //用於設定用戶端請求讀取逾時時間 client_body_timeout 10; //用於設定用戶端請求主體讀取逾時時間 send_timeout 10; //用於設定相應用戶端的逾時時間//以下是 httpGzip 模組配置#httpGzip modulesgzip on; //開啟 gzip 壓縮 gzip_min_length 1k; //設定允許壓縮的頁面最小位元組數gzip_buffers 4 16k; //申請 4 個單位為 16K 的記憶體作為壓縮結果流緩衝 gzip_http_version 1.1; //設定識別 http 協議的版本,預設是 1.1 gzip_comp_level 2; //指定 gzip 壓縮比,1-9 數字越小,壓縮比越小,速度越快.gzip_types text/plainapplication/x-javascript text/css application/xml; //指定壓縮的類型gzip_vary on; //讓前端的快取服務器存經過 gzip 壓縮的頁面三、nginx 的 server 虛擬機器主機配置兩種方式一種是直接在主設定檔中設定 server 欄位配置虛擬機器主機,另外一種是使用include 欄位設定虛擬機器主機,這樣可以減少主設定檔的複雜性。*****************************以下是 server 主機設定*********************************server {listen80;//監聽連接埠為 80server_namewww.rsyslog.org;//設定主機網域名稱charset gb2312;//設定訪問的語言編碼access_loglogs/www.rsyslog.org.access.logmain; //設定虛擬機器主機訪問日誌的存放路徑及日誌的格式為 mainlocation / {//設定虛擬機器主機的基本資料rootsites/www;//設定虛擬機器主機的網站根目錄indexindex.html index.htm; //設定虛擬機器主機預設訪問的網頁}location /status {// 查看 nginx 當前的狀態情況,需要模組 “--with-http_stub_status_module”支援stub_status on;access_log /usr/local/nginx/logs/status.log; auth_basic "NginxStatus"; }}include /usr/local/nginx/server/www1.rsyslog.org; //使用 include 欄位設定 server,內容如下[[email protected] ~]# cat /usr/local/nginx/server/www1.rsyslog.orgserver {listen80;server_namewww1.rsyslog.org;location / {rootsites/www1;indexindex.html index.htm;}}upstream 模組後面負載平衡再做介紹!

  

更多內容請訪問 李興利部落格

Nginx 主設定檔參數詳解

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.