Nginx 日常優(yōu)化(一)

安全優(yōu)化

  • 調(diào)整版本號
nginx.conf
...
http{
   ...
   server_tokenks off ;
   ...
   }
...
在http塊下加入 server_tokenks off
image.png
  • 修改源碼隱藏版本號
sed -n '13,17p' src/core/nginx.h 
----------------------------------------------------------
#define NGINX_VERSION      "1.156"  # 修改為想修改的版本號
#define NGINX_VER          "nginx/" NGINX_VERSION  #nginx修改為想修改的軟件名稱  改成apache
#ifdef NGX_BUILD             "NGINX"   #nginx修改為想修改的軟件名稱  改成apache
#define NGINX_VER_BUILD    NGINX_VER " (" NGX_BUILD ")" "NGINX"   #nginx修改為想修改的軟件名稱  改成apache

sed -i -e  's/1.12.0//g' -e 's/nginx\//JWS/g' -e   's/"NGINX"/"JWS"/g' src/core/nginx.h
  • 更改nginx啟動用戶
useradd nginx -s /sbin/nologin -M
# nginx.conf 
user nginx nginx ;
或者編譯時 ./configure --user=nginx --group=nginx 

配置文件參數(shù)

  • nginx 進程對應配置
# nginx.conf 
worker_processes 1 ;  --> 指定nginx要開啟的進程數(shù)
# 參數(shù)調(diào)整的worker進程數(shù)量,nginx有master和worker進程,實際處理請求是為woker進程, master為管理進程。
# 查看cpu個數(shù)
grep  -c processor  /proc/cpuinfo 
# 修改nginx.conf 與實際cpu顆數(shù)對應
sed -i "/worker_processes/s/1/x/g"  nginx.conf
  • 優(yōu)化cpu親和力

默認情況nginx可能一個cpu跑多個nginx進程,導致資源分配不均衡

# nginx.conf
worker_processes 4 ;
worker_cpu_affinity 0001 0010 0100 1000; 配置nginx進程與cpu親和力,把不同nginx進程分配到不同CPU。0001 為掩碼 代表 1,2,3,4顆cpu
# 兩顆
worker_processes 2; 
worker_cpu_affinity 0101 1010;
比如8核配置
worker_processes 8;
worker_cpu_affinity 00000001 00000010 00000100 0000100000010000 00100000 01000000 10000000;
worker_processes最多開啟8個,8個以上性能提升不會再提升了,而且穩(wěn)定性變得更低,所以8個進程夠用了。
  • nginx單個進程運行客戶端最大連接數(shù)
#nginx.conf 
events {
    worker_connections  1024;
}
參數(shù)包含代理服務器連接,客戶端連接等。實際并發(fā)連接還受worker_rlimit_nofile 影響
nginx 總并發(fā)連接數(shù) = nginx_worker數(shù)量 *  worker_connections 
  • nginx worker 最大文件打開數(shù)
worker_rlimit_nofile 65535;
  # 最大文件打開數(shù),可設置為系統(tǒng)優(yōu)化后的 ulimit -n 結果
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 《老男孩Linux運維》筆記 隱藏Nginx軟件版本號 一般來說,軟件的漏洞都和版本有關。因此要盡量隱藏對訪問用戶...
    Zhang21閱讀 3,882評論 0 28
  • 1.簡介: ? Nginx:engine X ,2002年,開源,商業(yè)版? http協(xié)議:web服務器(類似于ht...
    尛尛大尹閱讀 2,000評論 0 3
  • I/O模型Nginx介紹Nginx的安裝和目錄結構Nginx的配置Nginx的編譯安裝 一、I/O模型 (一)I/...
    哈嘍別樣閱讀 968評論 0 4
  • 轉(zhuǎn)載別人的文章,nginx調(diào)優(yōu)。鏈接如下:http://blog.csdn.net/xifeijian/artic...
    Alex_ct閱讀 1,051評論 0 1
  • 愛到深處會有什么表現(xiàn)?只要在一起,就算沉默,也不覺得厭倦。 愿你一切安好,晚安!
    何時再出發(fā)閱讀 136評論 1 1

友情鏈接更多精彩內(nèi)容