1. <ul id="0c1fb"></ul>

      <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
      <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区

      RELATEED CONSULTING
      相關(guān)咨詢
      選擇下列產(chǎn)品馬上在線溝通
      服務(wù)時(shí)間:8:30-17:00
      你可能遇到了下面的問題
      關(guān)閉右側(cè)工具欄

      新聞中心

      這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
      nginx-配置文件詳解

      配置文件結(jié)構(gòu)
      全局配置(user、worker_processes、error_log、pid)
      events(網(wǎng)絡(luò)連接相關(guān),worker_connections)
      http(最重要的部分,大部分功能都放這里)
      server(虛擬主機(jī)相關(guān))
      location(server里面)

      創(chuàng)新互聯(lián)公司主營(yíng)多倫網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,成都App定制開發(fā),多倫h5微信小程序搭建,多倫網(wǎng)站營(yíng)銷推廣歡迎多倫等地區(qū)企業(yè)咨詢

      全局配置項(xiàng)結(jié)構(gòu)
      https://coding.net/u/aminglinux/p/nginx/git/blob/master/3z/global.md
      events配置項(xiàng)結(jié)構(gòu)
      https://coding.net/u/aminglinux/p/nginx/git/blob/master/3z/events.md
      http配置項(xiàng)
      https://coding.net/u/aminglinux/p/nginx/git/blob/master/3z/http.md
      server配置項(xiàng)
      https://coding.net/u/aminglinux/p/nginx/git/blob/master/3z/server.md

      nginx.conf全局配置
      user nobody;
      #定義運(yùn)行nginx服務(wù)的用戶,還可以加上組,如 user nobody nobody;
      worker_processes 1;
      #定義nginx子進(jìn)程數(shù)量,即提供服務(wù)的進(jìn)程數(shù)量,該數(shù)值建議和服務(wù)cpu核數(shù)保持一致。
      #除了可以定義數(shù)字外,還可以定義為auto,表示讓系統(tǒng)自動(dòng)調(diào)整。
      error_log logs/error.log;
      #定義錯(cuò)誤日志的路徑,可以是相對(duì)路徑(相對(duì)prefix路徑的),也可以是絕對(duì)路徑。
      #該配置可以在此處定義,也可以定義到http、server、location里
      error_log logs/error.log notice;
      #定義錯(cuò)誤日志路徑以及日志級(jí)別.
      #錯(cuò)誤日志級(jí)別:常見的錯(cuò)誤日志級(jí)別有[debug|info|notice|warn|error|crit|alert|emerg],級(jí)別越高記錄的信息越少。
      #如果不定義默認(rèn)是error
      pid logs/nginx.pid;
      #定義nginx進(jìn)程pid文件所在路徑,可以是相對(duì)路徑,也可以是絕對(duì)路徑。
      worker_rlimit_nofile 100000;
      #定義nginx最多打開文件數(shù)限制。如果沒設(shè)置的話,這個(gè)值為操作系統(tǒng)(ulimit -n)的限制保持一致。
      #把這個(gè)值設(shè)高,nginx就不會(huì)有“too many open files”問題了。

      #events配置部分
      worker_connections 1024;
      #定義每個(gè)work_process同時(shí)開啟的最大連接數(shù),即允許最多只能有這么多連接。
      accept_mutex on;
      #當(dāng)某一個(gè)時(shí)刻只有一個(gè)網(wǎng)絡(luò)連接請(qǐng)求服務(wù)器時(shí),服務(wù)器上有多個(gè)睡眠的進(jìn)程會(huì)被同時(shí)叫醒,這樣會(huì)損耗一定的服務(wù)器性能。
      #Nginx中的accept_mutex設(shè)置為on,將會(huì)對(duì)多個(gè)Nginx進(jìn)程(worker processer)接收連接時(shí)進(jìn)行序列化,防止多個(gè)進(jìn)程爭(zhēng)搶資源。
      #默認(rèn)就是on。
      multi_accept on;
      #nginx worker processer可以做到同時(shí)接收多個(gè)新到達(dá)的網(wǎng)絡(luò)連接,前提是把該參數(shù)設(shè)置為on。
      #默認(rèn)為off,即每個(gè)worker process一次只能接收一個(gè)新到達(dá)的網(wǎng)絡(luò)連接。
      use epoll;
      #Nginx服務(wù)器提供了多個(gè)事件驅(qū)動(dòng)器模型來處理網(wǎng)絡(luò)消息。
      #其支持的類型有:select、poll、kqueue、epoll、rtsing、/dev/poll以及eventport。

      • select:只能在Windows下使用,這個(gè)事件模型不建議在高負(fù)載的系統(tǒng)使用
      • poll:Nginx默認(rèn)首選,但不是在所有系統(tǒng)下都可用
      • kqueue:這種方式在FreeBSD 4.1+, OpenBSD2.9+, NetBSD 2.0, 和 MacOS X系統(tǒng)中是最高效的
      • epoll: 這種方式是在Linux 2.6+內(nèi)核中最高效的方式
      • rtsig:實(shí)時(shí)信號(hào),可用在Linux 2.2.19的內(nèi)核中,但不適用在高流量的系統(tǒng)中
      • /dev/poll: Solaris 7 11/99+,HP/UX 11.22+, IRIX 6.5.15+, and Tru64 UNIX 5.1A+操作系統(tǒng)最高效的方式
        • eventport: Solaris 10最高效的方式

      #http配置部分
      #官方文檔 http://nginx.org/en/docs/
      #參考鏈接: https://segmentfault.com/a/1190000012672431
      #參考鏈接: https://segmentfault.com/a/1190000002797601
      #參考鏈接:http的header https://kb.cnblogs.com/page/92320/
      MIME-Type
      include mime.types; //cat conf/mime.types
      #定義nginx能識(shí)別的網(wǎng)絡(luò)資源媒體類型(如,文本、html、js、css、流媒體等)
      default_type application/octet-stream;
      #定義默認(rèn)的type,如果不定義改行,默認(rèn)為text/plain.
      log_format
      #log_format main '$remote_addr - $remote_user [$time_local] "$request" '
      '$status $body_bytes_sent "$http_referer" '
      '"$http_user_agent" "$http_x_forwarded_for"';
      #其中main為日志格式的名字,后面的為nginx的內(nèi)部變量組成的一串字符串。
      access_log logs/access.log main;
      #定義日志的路徑以及采用的日志格式,該參數(shù)可以在server配置塊中定義。
      sendfile on;
      #是否調(diào)用sendfile函數(shù)傳輸文件,默認(rèn)為off,使用sendfile函數(shù)傳輸,可以減少user mode和kernel mode的切換,從而提升服務(wù)器性能。
      #對(duì)于普通應(yīng)用設(shè)為 on,如果用來進(jìn)行下載等應(yīng)用磁盤IO重負(fù)載應(yīng)用,可設(shè)置為off,以平衡磁盤與網(wǎng)絡(luò)I/O處理速度,降低系統(tǒng)的負(fù)載。
      sendfile_max_chunk 128k;
      #該參數(shù)限定Nginx worker process每次調(diào)用sendfile()函數(shù)傳輸數(shù)據(jù)的最大值,默認(rèn)值為0,如果設(shè)置為0則無限制。
      tcp_nopush on;
      #當(dāng)tcp_nopush設(shè)置為on時(shí),會(huì)調(diào)用tcp_cork方法進(jìn)行數(shù)據(jù)傳輸。
      #使用該方法會(huì)產(chǎn)生這樣的效果:當(dāng)應(yīng)用程序產(chǎn)生數(shù)據(jù)時(shí),內(nèi)核不會(huì)立馬封裝包,而是當(dāng)數(shù)據(jù)量積累到一定量時(shí)才會(huì)封裝,然后傳輸。這樣有助于解決網(wǎng)絡(luò)堵塞問題。
      #默認(rèn)值為on。舉例:快遞員收快遞、發(fā)快遞,包裹累積到一定量才會(huì)發(fā),節(jié)省運(yùn)輸成本。
      keepalive_timeout 65 60;
      #該參數(shù)有兩個(gè)值,第一個(gè)值設(shè)置nginx服務(wù)器與客戶端會(huì)話結(jié)束后仍舊保持連接的最長(zhǎng)時(shí)間,單位是秒,默認(rèn)為75s。
      #第二個(gè)值可以省略,它是針對(duì)客戶端的瀏覽器來設(shè)置的,可以通過curl -I看到header信息中有一項(xiàng)Keep-Alive: timeout=60,如果不設(shè)置就沒有這一項(xiàng)。
      #第二個(gè)數(shù)值設(shè)置后,瀏覽器就會(huì)根據(jù)這個(gè)數(shù)值決定何時(shí)主動(dòng)關(guān)閉連接,Nginx服務(wù)器就不操心了。但有的瀏覽器并不認(rèn)可該參數(shù)。
      send_timeout
      #這個(gè)超時(shí)時(shí)間是發(fā)送響應(yīng)的超時(shí)時(shí)間,即Nginx服務(wù)器向客戶端發(fā)送了數(shù)據(jù)包,但客戶端一直沒有去接收這個(gè)數(shù)據(jù)包。
      #如果某個(gè)連接超過send_timeout定義的超時(shí)時(shí)間,那么Nginx將會(huì)關(guān)閉這個(gè)連接。
      client_max_body_size 10m;
      #瀏覽器在發(fā)送含有較大HTTP包體的請(qǐng)求時(shí),其頭部會(huì)有一個(gè)Content-Length字段,client_max_body_size是用來限制Content-Length所示值的大小的。
      #這個(gè)限制包體的配置不用等Nginx接收完所有的HTTP包體,就可以告訴用戶請(qǐng)求過大不被接受。會(huì)返回413狀態(tài)碼。
      #例如,用戶試圖上傳一個(gè)1GB的文件,Nginx在收完包頭后,發(fā)現(xiàn)Content-Length超過client_max_body_size定義的值,
      #就直接發(fā)送413(Request Entity Too Large)響應(yīng)給客戶端。
      gzip on;
      #是否開啟gzip壓縮。
      gzip_min_length 1k;
      #設(shè)置允許壓縮的頁面最小字節(jié)數(shù),頁面字節(jié)數(shù)從header頭得content-length中進(jìn)行獲取。默認(rèn)值是20。建議設(shè)置成大于1k的字節(jié)數(shù),小于1k可能會(huì)越壓越大。
      gzip_buffers 4 16k;
      #設(shè)置系統(tǒng)獲取幾個(gè)單位的buffer用于存儲(chǔ)gzip的壓縮結(jié)果數(shù)據(jù)流。4 16k代表分配4個(gè)16k的buffer。
      gzip_http_version 1.1;
      #用于識(shí)別 http 協(xié)議的版本,早期的瀏覽器不支持 Gzip 壓縮,用戶會(huì)看到亂碼,所以為了支持前期版本加上了這個(gè)選項(xiàng)。
      #如果你用了Nginx反向代理并期望也啟用Gzip壓縮的話,由于末端通信是http/1.1,故請(qǐng)?jiān)O(shè)置為 1.1。
      gzip_comp_level 6;
      #gzip壓縮比,1壓縮比最小處理速度最快,9壓縮比最大但處理速度最慢(傳輸快但比較消耗cpu)
      gzip_types mime-type ... ;
      #匹配mime類型進(jìn)行壓縮,無論是否指定,”text/html”類型總是會(huì)被壓縮的。
      #在conf/mime.conf里查看對(duì)應(yīng)的type。
      #示例:gzip_types text/plain application/x-javascript text/css text/html application/xml;
      gzip_proxied any;
      #Nginx作為反向代理的時(shí)候啟用,決定開啟或者關(guān)閉后端服務(wù)器返回的結(jié)果是否壓縮,匹配的前提是后端服務(wù)器必須要返回包含”Via”的 header頭。
      #以下為可用的值:
      #off - 關(guān)閉所有的代理結(jié)果數(shù)據(jù)的壓縮
      #expired - 啟用壓縮,如果header頭中包含 "Expires" 頭信息
      #no-cache - 啟用壓縮,如果header頭中包含 "Cache-Control:no-cache" 頭信息
      #no-store - 啟用壓縮,如果header頭中包含 "Cache-Control:no-store" 頭信息
      #private - 啟用壓縮,如果header頭中包含 "Cache-Control:private" 頭信息
      #no_last_modified - 啟用壓縮,如果header頭中不包含 "Last-Modified" 頭信息
      #no_etag - 啟用壓縮 ,如果header頭中不包含 "ETag" 頭信息
      #auth - 啟用壓縮 , 如果header頭中包含 "Authorization" 頭信息
      #any - 無條件啟用壓縮
      gzip_vary on;
      #和http頭有關(guān)系,會(huì)在響應(yīng)頭加個(gè) Vary: Accept-Encoding ,可以讓前端的緩存服務(wù)器緩存經(jīng)過gzip壓縮的頁面,例如,用Squid緩存經(jīng)過Nginx壓縮的數(shù)據(jù)。

      nginx.conf server部分配置

      server{} 包含在http{}內(nèi)部,每一個(gè)server{}都是一個(gè)虛擬主機(jī)(站點(diǎn))。
      以下為nginx.conf配置文件中server{}部分的內(nèi)容。
      server {
      listen 80; //監(jiān)聽端口為80,可以自定義其他端口,也可以加上IP地址,如,listen 127.0.0.1:8080;
      server_name localhost; //定義網(wǎng)站域名,可以寫多個(gè),用空格分隔。
      #charset koi8-r; //定義網(wǎng)站的字符集,一般不設(shè)置,而是在網(wǎng)頁代碼中設(shè)置。
      #access_log logs/host.access.log main; //定義訪問日志,可以針對(duì)每一個(gè)server(即每一個(gè)站點(diǎn))設(shè)置它們自己的訪問日志。

      ##在server{}里有很多l(xiāng)ocation配置段
      location / {
          root   html;  //定義網(wǎng)站根目錄,目錄可以是相對(duì)路徑也可以是絕對(duì)路徑。
          index  index.html index.htm; //定義站點(diǎn)的默認(rèn)頁。
      }
      #error_page  404              /404.html;  //定義404頁面
      # redirect server error pages to the static page /50x.html
      #
      error_page   500 502 503 504  /50x.html;  //當(dāng)狀態(tài)碼為500、502、503、504時(shí),則訪問50x.html
      location = /50x.html {
          root   html;  //定義50x.html所在路徑
      }
      # proxy the PHP scripts to Apache listening on 127.0.0.1:80
      #
      #定義訪問php腳本時(shí),將會(huì)執(zhí)行本location{}部分指令
      #location ~ \.php$ {
      #    proxy_pass   http://127.0.0.1;  //proxy_pass后面指定要訪問的url鏈接,用proxy_pass實(shí)現(xiàn)代理。
      #}
      # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
      #
      #location ~ \.php$ {
      #    root           html;
      #    fastcgi_pass   127.0.0.1:9000;  //定義FastCGI服務(wù)器監(jiān)聽端口與地址,支持兩種形式,1 IP:Port, 2 unix:/path/to/sockt
      #    fastcgi_index  index.php;
      #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;  //定義SCRIPT_FILENAME變量,后面的路徑/scripts為上面的root指定的目錄
      #    include        fastcgi_params; //引用prefix/conf/fastcgi_params文件,該文件定義了fastcgi相關(guān)的變量
      #}
      # deny access to .htaccess files, if Apache's document root
      # concurs with nginx's one
      # 
      #location ~ /\.ht {   //訪問的url中,以/.ht開頭的,如,www.example.com/.htaccess,會(huì)被拒絕,返回403狀態(tài)碼。
      #    deny  all;  //這里的all指的是所有的請(qǐng)求。
      #}

      }

      another virtual host using mix of IP-, name-, and port-based configuration

      #
      #server {

      listen 8000; //監(jiān)聽8000端口

      listen somename:8080; //指定ip:port

      server_name somename alias another.alias; //指定多個(gè)server_name

      location / {

      root html;

      index index.html index.htm;

      }

      #}

      HTTPS server

      #
      #server {

      listen 443 ssl; //監(jiān)聽443端口,即ssl

      server_name localhost;

      以下為ssl相關(guān)配置

      ssl_certificate cert.pem; //指定pem文件路徑

      ssl_certificate_key cert.key; //指定key文件路徑

      ssl_session_cache shared:SSL:1m; //指定session cache大小

      ssl_session_timeout 5m; //指定session超時(shí)時(shí)間

      ssl_protocols TLSv1 TLSv1.1 TLSv1.2; //指定ssl協(xié)議

      ssl_ciphers HIGH:!aNULL:!MD5; //指定ssl算法

      ssl_prefer_server_ciphers on; //優(yōu)先采取服務(wù)器算法

      location / {

      root html;

      index index.html index.htm;

      }

      #}
      線上nginx的配置文件就不分享了,涉及保密協(xié)議


      本文標(biāo)題:nginx-配置文件詳解
      文章地址:http://www.ef60e0e.cn/article/jppsde.html
      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区
      1. <ul id="0c1fb"></ul>

        <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
        <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

        镇江市| 保德县| 辉县市| 临江市| 正定县| 保康县| 额济纳旗| 海淀区| 浦北县| 富锦市| 扶沟县| 宜城市| 丰城市| 繁昌县| 佛坪县| 沁水县| 光山县| 镇江市| 油尖旺区| 怀来县| 家居| 类乌齐县| 昌都县| 西平县| 金山区| 榆中县| 揭西县| 双桥区| 太仓市| 炉霍县| 宁夏| 台山市| 琼结县| 洱源县| 中西区| 汉源县| 扬州市| 霸州市| 沙湾县| 依兰县| 大埔县|