亚洲乱色熟女一区二区三区丝袜,天堂√中文最新版在线,亚洲精品乱码久久久久久蜜桃图片,香蕉久久久久久av成人,欧美丰满熟妇bbb久久久

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

高性能WEB服務(wù)器Nginx常用功能(一):四層訪問控制、賬戶認證、自定義錯誤頁面、檢查資源是否存在

admin
2025年6月29日 18:37 本文熱度 125

3 Nginx 常用功能

3.1 Nginx 四層訪問控制

Nginx 中的訪問控制功能基于 ngx_http_access_module 模塊實現(xiàn),可以通過匹配客戶端源 IP 地址進行限制

該模塊是默認模塊,在使用 apt/yum 安裝的環(huán)境中默認存在,如果想要禁用,需要自行編譯,然后顯式聲明禁用該模塊

https://nginx.org/en/docs/http/ngx_http_access_module.html
deny address|CIDR|unix:|all; #拒絕訪問的客戶端,黑名單,可以是具體IP,網(wǎng)段,socket(1.5.1版本以上),所有allow address|CIDR|unix:|all; #允許訪問的客戶端,白名單,可以是具體IP,網(wǎng)段,socket(1.5.1版本以上),所有                              #deny 和 allow 指令同時存在時,按加載順序生效                              #作用域 http,server,locationlimit_except
server {  listen 80;  server_name www.m99-josedu.com;  root /var/www/html/www.m99-josedu.com;
  location = /a.html {    allow 127.0.0.1#a.html 只允許 127.1 訪問,但實際上并不起作用,因為在 server 和 location 中都沒有 deny  }                  #所以還是所有人都可以訪問}
server {  listen 80;  server_name www.m99-josedu.com;  root /var/www/html/www.m99-josedu.com;
  location = /a.html {    deny all; #所有客戶端都不能訪問 a.html,但當前 server 中其它資源不受影響    allow 127.0.0.1#此處放行了127.1,但 deny 寫在前面了,所以 127.1 也同樣無法訪問  }}
server {  listen 80;  server_name www.m99-josedu.com;  root /var/www/html/www.m99-josedu.com;
  location = /a.html {    allow 127.0.0.1# 放行127.1    deny 10.0.0.208# 拒絕 10.0.0.208    allow 10.0.0.0/24# 放行 10.0.0.0/24 所有IP,但 10.0.0.208 在上一條被拒絕    deny all; # 拒絕所有,兜底規(guī)則  }}

3.2 Nginx 賬戶認證

Nginx 中的賬戶認證功能由 ngx_http_auth_basic_module 模塊提供,該模塊也是默認模塊

此種認證方式并不安全,如果服務(wù)端是 http 協(xié)議,而非 https 協(xié)議,則用戶名和密碼在網(wǎng)絡(luò)中是明文傳輸?shù)?,可以被抓包工具截獲

https://nginx.org/en/docs/http/ngx_http_auth_basic_module.html
auth_basic string|off#身份驗證時對話框上的提示信息,新版瀏覽器幾乎不支持,默認off,即不啟用驗證功能auth_basic_user_file file; #指定身份認證的用戶名和密碼的文件路徑,密碼要使用 htpasswd 命令生成                           #作用域 http,server,location,limit_except
#安裝密碼工具[root@ubuntu ~]# apt install apache2-utils -y[root@rocky ~]# yum -y install httpd-tools
#創(chuàng)建用戶名和密碼#首次使用需要使用 -c 選項指定文件路徑[root@ubuntu ~]# htpasswd -c /etc/nginx/conf.d/httpuser tomNew password:Re-type new password:Adding password for user tom
#新增用戶,非交互式輸入密碼[root@ubuntu ~]# htpasswd -b /etc/nginx/conf.d/httpuser jerry 123456Adding password for user jerry
#查看文件,在生產(chǎn)環(huán)境中,基于安全考慮,可以將文件設(shè)為隱藏文件,修改屬主屬組,并配置讀寫權(quán)限[root@ubuntu ~]# cat /etc/nginx/conf.d/httpusertom:$apr1$.uhWB88p$NKvgCPmVyzJF6rRV9tpke1jerry:$apr1$8.1IC.TR$GxmCHPQjTHdXbltchvi1i/
#配置驗證server {  listen 80;  server_name www.m99-josedu.com;  root /var/www/html/www.m99-josedu.com;
  location = /a.html {    auth_basic "pls input your name"; #訪問 www.m99-josedu.com/a.html 時需要驗證    auth_basic_user_file conf.d/httpuser; #同域名下其它資源不用驗證  }}
# 測試# 在瀏覽器中會直接彈出結(jié)話框# 命令行中寫法[root@ubuntu ~]# curl http://jerry:123456@www.m99-josedu.com/a.htmla.html[root@ubuntu ~]# curl -u tom:123456 --basic http://www.m99-josedu.com/a.htmla.html

3.3 自定義錯誤頁面

在沒有配置錯誤處理頁面的情況下,非 200 狀態(tài)碼的響應(yīng)請求返回的都是 Nginx 默認頁面,我們可以通過指令設(shè)置自定義的錯誤頁面,不同的虛擬主機,不同的錯誤都可以設(shè)置成不同的錯誤頁面

https://nginx.org/en/docs/http/ngx_http_core_module.html#error_page
error_page code ... [=[response]] uri; #定義指定狀態(tài)碼的錯誤頁面,可以多個狀態(tài)碼共用一個資源                  #作用域 http, server, location, if in location
server {  listen 80;  server_name www.m99-josedu.com;  root /var/www/html/www.m99-josedu.com;  error_page 400 404 502 503 504 error.html; #自定義指定狀態(tài)碼的錯誤頁面  location = /error.html {    root /data/errors;  }}[root@ubuntu ~]# ls /data/errors/error.html
server {  listen 80;  server_name www.m99-josedu.com;  root /var/www/html/www.m99-josedu.com;  error_page 400 404 =302 /index.html; #通過302 重定向到 index.hmtl}
server {  listen 80;  server_name www.m99-josedu.com;  root /var/www/html/www.m99-josedu.com;  error_page 400 404 =302 http://www.baidu.com; #臨時重定向  error_page 402 503 =301 http://www.baidu.com; #永久重定向}

3.4 自定義錯誤日志

默認沒有為每個 server 配置單獨日志的情況下,所有錯誤日志和訪問日志都是寫在相同的文件中,我們可以單獨為每個 server 或 location 設(shè)置日志

https://nginx.org/en/docs/ngx_core_module.html#error_log
#全局配置[root@ubuntu ~]# cat /etc/nginx/nginx.conf | grep log    access_log /var/log/nginx/access.log;    error_log /var/log/nginx/error.log;
error_log file [level]; #指定保存錯誤日志的文件和記錄級別,錯誤級別可參考syslog那一課的內(nèi)容                        #如果不需要記錄日志,值可以寫在 /dev/null                        #默認值 error_log logs/error.log error                        #作用域 main, http, mail, stream, server, location
server {  listen 80;  server_name www.m99-josedu.com;  root /var/www/html/www.m99-josedu.com;
  error_log /var/log/nginx/www.m99-josedu.com.error.log; #為當前 server 配置定義單獨的 error_log
  location = /abc { #此資源報錯不記錄日志    error_log /dev/null;  }}
# 測試,訪問下列不存在的資源分別查看日志# http://www.m99-josedu.com/ab# http://www.m99-josedu.com/abc# http://www.m99-josedu.com/abd
3.5 檢測資源是否存在
try_files file ... uri; #按順序查詢資源是否存在,返回第一個匹配到的,如果沒有匹配到,會內(nèi)部重定向到最后一個資源try_files file ... =code; #最后還可以加一個狀態(tài)碼
#默認虛擬主機中的 try_files[root@ubuntu ~]# cat /etc/nginx/sites-enabled/default | grep try_files    try_files $uri $uri/ =404;
server {  listen 80;  server_name www.m99-josedu.com;  root /var/www/html/www.m99-josedu.com;  try_files $uri $uri.html $uri/index.html /index.html;  location /a{    try_files $uri $uri.html;  }  location /b{    try_files $uri $uri.html =418;  }  error_log /var/log/nginx/www.m99-josedu.com.error.log;}
# 測試# http://www.m99-josedu.com/xyz 先找 xyz,往后依次是 xyz.html xyz/index.html /index.html# http://www.m99-josedu.com/a 如果有 a 或 a.html 會匹配到,返回狀態(tài)碼是200,如果沒有則返回 500錯誤頁面# http://www.m99-josedu.com/b 如果有 b 或 b.html 會匹配到,返回狀態(tài)碼是200,如果沒有則返回 418錯誤頁面

— END —


閱讀原文:原文鏈接


該文章在 2025/7/1 23:03:35 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運作、調(diào)度、堆場、車隊、財務(wù)費用、相關(guān)報表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點,圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務(wù)都免費,不限功能、不限時間、不限用戶的免費OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved