不知道但是很常見的nginx問(wèn)題
文是明月在 segmentfault 里無(wú)意中看到的,感覺雖然說(shuō)的都是很簡(jiǎn)單的東西,但還是有很強(qiáng)的啟迪作用的。所以就收錄到學(xué)習(xí)筆記來(lái)分享了。至少對(duì)于剛剛開始接觸使用Nginx的新手們來(lái)說(shuō)還是幫助不小的。
nginx使用問(wèn)題及解決方法
常見問(wèn)題
問(wèn)題一:相同server_name多個(gè)虛擬主機(jī)優(yōu)先級(jí)訪問(wèn)
server{
listen 80;
server_name server1;
location{...}
}
server{
listen 80;
server_name server2;
location{...}
}
解決方法:
配置兩個(gè)conf文件:server1.conf 和 server2.conf
根據(jù)Linux系統(tǒng)中文件順序讀取
問(wèn)題二:location匹配優(yōu)先級(jí)
location = /code1/ {
rewrite ^(.*)$ /code1/index.html break;
}
location ~ /code.* {
rewrite ^(.*)$ /code3/index.html break;
}
location ^~ /code {
rewrite ^(.*)$ /code2/index.html break;
}
知識(shí)填坑:
=:進(jìn)行普通字符精確匹配,完全匹配
^~:普通字符匹配,使用前綴匹配
~ ~*:表示執(zhí)行一個(gè)正則匹配()
解決方法:
根據(jù)匹配找到最優(yōu)匹配
優(yōu)先級(jí):完全匹配>正則匹配>前綴匹配
問(wèn)題三:try_files使用
location / {
try_files $uri $uri/ /index.html;
}
解決方法:
按順序檢查文件是否存在
問(wèn)題四:Nginx的alias和root區(qū)別
location /request_path/img/ {
root /local_path/img/;
}
location /request_path/img/ {
alias /local_path/img/;
}
解決方法:
root 設(shè)置,最終請(qǐng)求的路徑為 /local_path/img/request_path/img/
alias 設(shè)置,最終請(qǐng)求為 /local_path/img/
問(wèn)題五:通過(guò)多層代理,傳遞用戶真實(shí)IP
解決方法:
set x_real_ip=$remote_addr
$x_real_ip=真實(shí)IP
性能優(yōu)化問(wèn)題
優(yōu)化考慮點(diǎn):
當(dāng)前系統(tǒng)結(jié)構(gòu)瓶頸,如觀察指標(biāo)、壓力測(cè)試
了解業(yè)務(wù)模式,如接口業(yè)務(wù)類型、系統(tǒng)層次化結(jié)構(gòu)
性能與安全
接口壓力測(cè)試工具: ab
安裝: yum install httpd-tools
使用: ab -n 2000 -c 20 http://127.0.0.1/
nginx關(guān)于系統(tǒng)的優(yōu)化點(diǎn):
網(wǎng)絡(luò)、系統(tǒng)、服務(wù)、程序、數(shù)據(jù)庫(kù)
控制文件句柄數(shù)量,文件句柄就是一個(gè)索引
CPU親和,使進(jìn)程不會(huì)在處理器間頻繁遷移,減少性能損耗
vim /etc/nginx/nginx.conf
user nginx;
worker_processes 16;
worker_cpu_affinity auto;
worker_rlimit_nofile 15535;
events{
use epoll;
worker_connections 10240;
}
http{
include /etc/nginx/mime.types;
default_type application/octet-stream;
#Charset
charset utf-8;
log_format main '';
access_log /var/log/nginx/access.log main;
#Core module
sendfile on;
keepalive_timeout 65;
#Gzip module
gzip on;
gzip_disable "MSIE [1-6]\.";
gzip_http_version 1.1;
#Virtal server
include /etc/nginx/conf.d/*.conf;
}
nginx安全問(wèn)題及防范策略
惡意行為
問(wèn)題:爬蟲行為和惡意抓取、資源盜用
解決方法:
基礎(chǔ)防盜鏈功能:不讓惡意用戶輕易的爬取網(wǎng)站對(duì)外數(shù)據(jù)
secure_link_module 模塊:對(duì)數(shù)據(jù)安全性提高加密驗(yàn)證和失效性,對(duì)一些重要數(shù)據(jù)使用
access_module 模塊:對(duì)后臺(tái)、部分用戶服務(wù)的數(shù)據(jù)提供IP監(jiān)控,如規(guī)定IP等
應(yīng)用層攻擊
問(wèn)題一:后臺(tái)密碼撞庫(kù),通過(guò)密碼字典不斷對(duì)后臺(tái)系統(tǒng)登錄性嘗試,獲取后臺(tái)密碼
解決方法:
后臺(tái)密碼復(fù)雜的,大小寫數(shù)字字符等
預(yù)警機(jī)制,同一IP的頻繁訪問(wèn)
access_module 模塊:對(duì)后臺(tái)、部分用戶服務(wù)的數(shù)據(jù)提供IP監(jiān)控
問(wèn)題二:文件上傳漏洞,利用可以上傳的接口將惡意代碼植入服務(wù)器中,再通過(guò)url訪問(wèn)以執(zhí)行
解決方法:
針對(duì)一些木馬和后綴等做一定的處理
location ^~ /upload{
root /usr/share/html;
if($request_filename ~*(.*)\.php){
return 403; #拒絕訪問(wèn)
}
}
問(wèn)題三:SQL注入,利用未過(guò)濾或未審核的用戶輸入的攻擊手段,讓應(yīng)用運(yùn)行本不應(yīng)該運(yùn)行的SQL代碼
解決方法:
針對(duì)' or 1=1 #等常見注入代碼進(jìn)行檢測(cè)
搭建安全waf,針對(duì)滲透規(guī)則寫正則表達(dá)式
nginx防攻擊策略
使用nginx+Lua搭建安全waf防火墻
防火墻功能:
攔截Cookie類型攻擊
攔截異常post請(qǐng)求
攔截cc攻擊,頻繁訪問(wèn)
攔截URL,不想暴露的接口
攔截arg參數(shù)

責(zé)任編輯:任我行
- 相關(guān)閱讀
- 碳交易
- 節(jié)能環(huán)保
- 電力法律
- 電力金融
- 綠色電力證書
-
碳中和戰(zhàn)略|趙英民副部長(zhǎng)致辭全文
2020-10-19碳中和,碳排放,趙英民 -
兩部門:推廣不停電作業(yè)技術(shù) 減少停電時(shí)間和停電次數(shù)
2020-09-28獲得電力,供電可靠性,供電企業(yè) -
國(guó)家發(fā)改委、國(guó)家能源局:推廣不停電作業(yè)技術(shù) 減少停電時(shí)間和停電次數(shù)
2020-09-28獲得電力,供電可靠性,供電企業(yè)
-
碳中和戰(zhàn)略|趙英民副部長(zhǎng)致辭全文
2020-10-19碳中和,碳排放,趙英民 -
深度報(bào)告 | 基于分類監(jiān)管與當(dāng)量協(xié)同的碳市場(chǎng)框架設(shè)計(jì)方案
2020-07-21碳市場(chǎng),碳排放,碳交易 -
碳市場(chǎng)讓重慶能源轉(zhuǎn)型與經(jīng)濟(jì)發(fā)展并進(jìn)
2020-07-21碳市場(chǎng),碳排放,重慶
-
兩部門:推廣不停電作業(yè)技術(shù) 減少停電時(shí)間和停電次數(shù)
2020-09-28獲得電力,供電可靠性,供電企業(yè) -
國(guó)家發(fā)改委、國(guó)家能源局:推廣不停電作業(yè)技術(shù) 減少停電時(shí)間和停電次數(shù)
2020-09-28獲得電力,供電可靠性,供電企業(yè) -
2020年二季度福建省統(tǒng)調(diào)燃煤電廠節(jié)能減排信息披露
2020-07-21火電環(huán)保,燃煤電廠,超低排放
-
四川“專線供電”身陷違法困境
2019-12-16專線供電 -
我國(guó)能源替代規(guī)范法律問(wèn)題研究(上)
2019-10-31能源替代規(guī)范法律 -
區(qū)域鏈結(jié)構(gòu)對(duì)于數(shù)據(jù)中心有什么影響?這個(gè)影響是好是壞呢!