2019-01-07 nginx實(shí)現(xiàn)web站點(diǎn)實(shí)戰(zhàn)

ngx_http_access_module

  • ngx_http_access_module模塊
    實(shí)現(xiàn)基于ip的訪問控制功能
    1泳赋、allow address | CIDR | unix: | all;
    2诫惭、deny address | CIDR | unix: | all;
    http,server,location,limit_expect
    自上而下檢查毛雇,一旦匹配锭吨,將生效,條件嚴(yán)格的置前
    示例:
location / {
  deny 192.168.1.1;
  allow 192.168.1.0/24;
  allow 10.1.1.0/16;
  allow 2001:0db8::/32;
  deny all;
}

ngx_http_auth_basic_module

  • ngx_http_auth_basic_module模塊
    實(shí)現(xiàn)基于用戶的訪問控制冰木,使用basic機(jī)制進(jìn)行用戶認(rèn)證
    1饼丘、auth_basic string | off;
    2、auth_basic_user_file file;
location /admin/ {
  auth_basic "Admin Area";
  auth_basic_user_file /etc/nginx/.ngxpasswd;
}

用戶口令文件:
1仑最、明文文本:格式name:password:comment
2扔役、加密文本:由htppasswd命令實(shí)現(xiàn)
httpd-tools所提供
放在server那里就是整個(gè)網(wǎng)站都需要認(rèn)證,放在location里面就是特定目錄需要認(rèn)證

ngx_http_stub_status_module

  • ngx_http_stub_status_module模塊
    用于輸出nginx的基本狀態(tài)信息
    輸出信息示例:
Active connections:291
server accepts handled requests
      16630948 16630948 31070465    ---3個(gè)數(shù)字分別對應(yīng)accepts警医,handled厅目,requests三個(gè)值
Reading: 6 Writing: 179 Waiting: 106

Active connections:當(dāng)前狀態(tài),活動(dòng)狀態(tài)的連接數(shù)
accepts:統(tǒng)計(jì)總值,已經(jīng)接受的客戶端請求的總數(shù)
handled:統(tǒng)計(jì)總值损敷,已經(jīng)處理完成的客戶端請求的總數(shù)
requests:統(tǒng)計(jì)總值,客戶端發(fā)來的總的請求數(shù)
Reading:當(dāng)前狀態(tài)深啤,正在讀取客戶端請求報(bào)文首部的連接的連接數(shù)
Writing:當(dāng)前狀態(tài)拗馒,正在向客戶端發(fā)送響應(yīng)報(bào)文過程中的連接數(shù)
Waiting:當(dāng)前狀態(tài),正在等待客戶端發(fā)出請求的空閑連接數(shù)
1溯街、stub_status;
示例:

location /status {
  stub_status;
  allow 172.16.0.0/16;
  deny all;
}

ngx_http_log_module

  • ngx_http_log_module模塊
    指定日志格式記錄請求
    1诱桂、log_format name string ...;
    string可以使用nginx核心模塊及其它模塊內(nèi)嵌的變量
    注意:log_format要在http那里定義
    2、access_log path [format [buffer=size] [gzip[=level]] [flush=time] [if=conditino]];
    access_log off;
    訪問日志文件路徑呈昔,格式及相關(guān)的緩沖的配置
    buffer=size
    flush=time
    示例:
log_format compression '$remote_addr-$remote_user [$time_local] '
      '"$request" $status $bytes_sent '
      '"$http_referer" "$http_user_agent" "$gzip_ratio"';

access_log /spool/logs/nginx-access.log compression buffer=32k;    ---buffer在測試環(huán)境不要用挥等,因?yàn)橐胚M(jìn)緩存等一段時(shí)間才能看到

3、open_log_file_cache max=N [inactive=time] [min_uses=N] [valid=time];
open_log_file_cache off;
緩存各日志文件相關(guān)的元數(shù)據(jù)信息
max:緩存的最大文件描述符數(shù)量
min_uses:在inactive指定的時(shí)長內(nèi)訪問大于等于此值方可被當(dāng)作活動(dòng)項(xiàng)
inactive:非活動(dòng)時(shí)長
valid:驗(yàn)證緩存中各緩存項(xiàng)是否為活動(dòng)項(xiàng)的時(shí)間間隔

ngx_http_gzip_module

  • ngx_http_gzip_module
    用gzip方法壓縮響應(yīng)數(shù)據(jù)堤尾,節(jié)約帶寬
    1肝劲、gzip on | off;
    啟用或禁用gzip壓縮
    2、gzip_comp_level level;
    壓縮比由低到高:1到9
    默認(rèn):1
    3郭宝、gzip_disable regex ...;
    匹配到客戶端瀏覽器不執(zhí)行壓縮
    4辞槐、gzip_min_length length;
    啟用壓縮功能的響應(yīng)報(bào)文大小閾值
    5、gzip_http_version 1.0 | 1.1;
    設(shè)定啟用壓縮功能時(shí)粘室,協(xié)議的最小版本
    默認(rèn):1.1
    6榄檬、gzip_buffers number size;
    支持實(shí)現(xiàn)壓縮功能時(shí)緩沖區(qū)數(shù)量及每個(gè)緩存區(qū)的大小
    默認(rèn):32 4k 或 16 8k
    7、gzip_types mime-type ...;
    指明僅對哪些類型的資源執(zhí)行壓縮操作衔统;即壓縮過濾器
    默認(rèn)包含有text/html鹿榜,不用顯示指定,否則出錯(cuò)
    8锦爵、gzip_vary on | off;
    如果啟用壓縮舱殿,是否在響應(yīng)報(bào)文首部插入“Vary:Accept-Encoding”
    9、gzip_proxied off | expired | on-cache | no-store | private | no_last_modified | no_etag | auth | any ...;
    nginx充當(dāng)代理服務(wù)器時(shí)棉浸,對于后端服務(wù)器的響應(yīng)報(bào)文怀薛,在何種條件下啟用壓縮功能
    off:不啟用壓縮
    expired,no-cache迷郑,no-store枝恋,private:對后端服務(wù)器的響應(yīng)報(bào)文首部Cache-Control值任何一個(gè),啟用壓縮功能
    示例:
gzip on;
gzip_comp_level 6;
gzip_min_length 64;
gzip_proxied any;
gzip_types text/xml text/css application/javascript;
curl -I compressed http://www.a.com    ---不加compressed默認(rèn)不壓縮嗡害,壓縮了的話有提示gzip

ngx_http_ssl_module

ngx_http_ssl_module模塊:
1焚碌、ssl on | off;
為指定虛擬機(jī)啟用HTTPS protocol,建議用listen指令代替
2霸妹、ssl_certificate file;
當(dāng)前虛擬主機(jī)使用PEM格式的證書文件
3十电、ssl_certificate_key file;
當(dāng)前虛擬主機(jī)上與其證書匹配的私鑰文件
4、ssl_protocols [SSLv2] [SSLv3] [TLSv1.1] [TLSv1.2];支持ssl協(xié)議版本鹃骂,默認(rèn)為后三個(gè)
5台盯、ssl_session_cache off | none | [builtin[:size]] [shared:name:size];
none:通知客戶端支持ssl session cache,但實(shí)際不支持
builtin[:size]:使用OpenSSL內(nèi)建緩存畏线,為每worker進(jìn)程私有
[shared:name:size]:在各worker之間使用一個(gè)共享的緩存

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末静盅,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子寝殴,更是在濱河造成了極大的恐慌蒿叠,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,946評論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蚣常,死亡現(xiàn)場離奇詭異市咽,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)抵蚊,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,336評論 3 399
  • 文/潘曉璐 我一進(jìn)店門施绎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人泌射,你說我怎么就攤上這事粘姜。” “怎么了熔酷?”我有些...
    開封第一講書人閱讀 169,716評論 0 364
  • 文/不壞的土叔 我叫張陵孤紧,是天一觀的道長。 經(jīng)常有香客問我拒秘,道長号显,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 60,222評論 1 300
  • 正文 為了忘掉前任躺酒,我火速辦了婚禮押蚤,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘羹应。我一直安慰自己揽碘,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,223評論 6 398
  • 文/花漫 我一把揭開白布园匹。 她就那樣靜靜地躺著雳刺,像睡著了一般。 火紅的嫁衣襯著肌膚如雪裸违。 梳的紋絲不亂的頭發(fā)上掖桦,一...
    開封第一講書人閱讀 52,807評論 1 314
  • 那天,我揣著相機(jī)與錄音供汛,去河邊找鬼枪汪。 笑死涌穆,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的雀久。 我是一名探鬼主播宿稀,決...
    沈念sama閱讀 41,235評論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼岸啡!你這毒婦竟也來了原叮?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 40,189評論 0 277
  • 序言:老撾萬榮一對情侶失蹤巡蘸,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后擂送,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體悦荒,經(jīng)...
    沈念sama閱讀 46,712評論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,775評論 3 343
  • 正文 我和宋清朗相戀三年嘹吨,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了搬味。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,926評論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡蟀拷,死狀恐怖碰纬,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情问芬,我是刑警寧澤悦析,帶...
    沈念sama閱讀 36,580評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站此衅,受9級特大地震影響强戴,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜挡鞍,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,259評論 3 336
  • 文/蒙蒙 一骑歹、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧墨微,春花似錦道媚、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,750評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至炼蹦,卻和暖如春羡宙,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背掐隐。 一陣腳步聲響...
    開封第一講書人閱讀 33,867評論 1 274
  • 我被黑心中介騙來泰國打工狗热, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留钞馁,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,368評論 3 379
  • 正文 我出身青樓匿刮,卻偏偏與公主長得像僧凰,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子熟丸,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,930評論 2 361

推薦閱讀更多精彩內(nèi)容

  • 1.簡介: ? Nginx:engine X 训措,2002年,開源光羞,商業(yè)版? http協(xié)議:web服務(wù)器(類似于ht...
    尛尛大尹閱讀 1,871評論 0 3
  • I/O模型: 阻塞型绩鸣、非阻塞型、復(fù)用型纱兑、信號(hào)驅(qū)動(dòng)型呀闻、異步 同步/異步:關(guān)注消息通知機(jī)制 消息通知:同步:等待對方返...
    Net夜風(fēng)閱讀 2,014評論 0 1
  • Nginx簡介 解決基于進(jìn)程模型產(chǎn)生的C10K問題,請求時(shí)即使無狀態(tài)連接如web服務(wù)都無法達(dá)到并發(fā)響應(yīng)量級一萬的現(xiàn)...
    魏鎮(zhèn)坪閱讀 2,009評論 0 9
  • I/O模型Nginx介紹Nginx的安裝和目錄結(jié)構(gòu)Nginx的配置Nginx的編譯安裝 一、I/O模型 (一)I/...
    哈嘍別樣閱讀 897評論 0 4
  • 基于IP地址的訪問控制模塊 ngx_http_access_module模塊可以限制某些客戶端IP地址的訪問潜慎,針對...
    geekdeedy閱讀 578評論 0 0