nginx.conf配置文件結構小結
核心配置文件的結構
nginx.conf主要由events、http、server、location、upstream等塊配置項和一些行配置項組成。

##代碼塊中的events、http、server、location、upstream等都是塊配置項##
#規(guī)定哪些用戶使用,nobody的話就是所有人
#user nobody;
##Nginx worker進程個數(shù):其數(shù)量直接影響性能。
#每個worker進程都是單線程的進程,他們會調用各個模塊以實現(xiàn)多種多樣的功能。如果這些模塊不會出現(xiàn)阻塞式的調用,那么,有多少CPU內核就應該配置多少個進程,反之,有可能出現(xiàn)阻塞式調用,那么,需要配置稍多一些的worker進程。
worker_processes 1;
##error日志的設置,日志默認位置是我們在linux上安裝nginx時配置的,也可以在下面修改。
#語法: error_log /path/file level;
#默認: error_log / log/error.log error;
#當path/file 的值為 /dev/null時,這樣就不會輸出任何日志了,這也是關閉error日志的唯一手段;
#leve的取值范圍是debug、info、notice、warn、error、crit、alert、emerg從左至右級別依次增大。
#當level的級別為error時,error、crit、alert、emerg級別的日志就都會輸出。大于等于該級別會輸出,小于該級別的不會輸出。
#如果設定的日志級別是debug,則會輸出所有的日志,這一數(shù)據量會很大,需要預先確保/path/file所在的磁盤有足夠的磁盤空間。級別設定到debug,必須在configure時加入 --with-debug配置項。
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
events {
worker_connections 1024;
}
http {
//引入mime.types文件的設置,這樣引入的方式主要是增加可讀性
include mime.types;
default_type application/octet-stream;
sendfile on;
//設置一個tcp連接最多保持多長時間存活
keepalive_timeout 65;
server {
//這里是配置nginx首頁以及出錯跳轉頁面的,我們這里配置的是localhost:80端口,也可以根據需要定義
listen 80;
server_name localhost;
//access.log 記錄所有用戶請求的一種日志
#access_log logs/host.access.log main;
//跳轉的nginx首頁,首頁文件在根目錄的html文件夾下的index.html
location / {
root html;
index index.html;
}
//出錯頁面,出錯的話就會跳轉。在根目錄的html文件夾下的/50x.html
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
//負載均衡的策略在upstream塊這里配置,如下是輪詢的一個范例
upstream bakend {
server 192.168.1.10 weight=1;
server 192.168.1.11 weight=2;
}
#引入其他的conf
include imooc.conf;
}#imooc.conf
server {
listen 81;
server_name localhost;
//跳轉的nginx首頁,首頁文件在根目錄的html文件夾下的index.html
location / {
root html;
index imooc123.html;
}
}nginx進程模型
包含master進程(用來監(jiān)聽命令和請求)和worker進程(用來處理,是異步非阻塞模式:如果當前client阻塞,就會繼續(xù)處理其他client的請求),可以通過配置開啟多個worker,每個 worker可以處理幾十萬甚至幾百萬的并發(fā)(根據機器性能),不過默認每個worker的連接數(shù)是1024。



到此這篇關于nginx.conf配置文件結構小結的文章就介紹到這了,更多相關nginx.conf結構內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
使用Bash腳本和Logrotate實現(xiàn)Nginx日志切割的方法
Logrotate是一個Linux系統(tǒng)上用來管理日志文件的工具,它可以定期輪轉日志文件、壓縮舊的日志文件以及刪除過期的日志文件,這篇文章主要介紹了使用Bash腳本和Logrotate實現(xiàn)Nginx日志切割,需要的朋友可以參考下2024-05-05
配置解決Nginx服務器中WordPress路徑不自動加斜杠問題
這篇文章主要介紹了配置解決Nginx服務器中WordPress路徑不自動加斜杠問題,nginx不會自動在請求的最后加上一個斜線的問題文中也有提到通用的規(guī)則改寫方法,需要的朋友可以參考下2016-01-01
Nginx Lua 根據參數(shù)請求轉發(fā)的實現(xiàn)
本文介紹了如何使用Nginx和Lua腳本實現(xiàn)基于參數(shù)的請求轉發(fā),文章詳細說明了配置方法,并提供了示例代碼,幫助讀者理解如何通過NginxLua模塊根據請求參數(shù)將流量轉發(fā)到不同后端服務,這種方法有助于實現(xiàn)靈活的負載均衡和動態(tài)內容處理2022-05-05

