国产av一二三区|日本不卡动作网站|黄色天天久久影片|99草成人免费在线视频|AV三级片成人电影在线|成年人aV不卡免费播放|日韩无码成人一级片视频|人人看人人玩开心色AV|人妻系列在线观看|亚洲av无码一区二区三区在线播放

網(wǎng)易首頁(yè) > 網(wǎng)易號(hào) > 正文 申請(qǐng)入駐

Nginx 配置實(shí)戰(zhàn):從摸魚(yú)到部署,手把手教你搞定生產(chǎn)級(jí)配置

0
分享至

Java精選面試題(微信小程序):5000+道面試題和選擇題,包含Java基礎(chǔ)、并發(fā)、JVM、線(xiàn)程、MQ系列、Redis、Spring系列、Elasticsearch、Docker、K8s、Flink、Spark、架構(gòu)設(shè)計(jì)、大廠真題等,在線(xiàn)隨時(shí)刷題!

先靈魂拷問(wèn)一下:寫(xiě)了一堆接口卻不會(huì)部署?服務(wù)器被惡意請(qǐng)求打崩過(guò)?靜態(tài)資源加載慢到用戶(hù)想摔手機(jī)?別慌!Nginx 作為后端工程師的「部署瑞士軍刀」,能搞定反向代理、負(fù)載均衡、限流防刷等一堆騷操作。記住咯:不會(huì)部署項(xiàng)目的后端不是一個(gè)合格的后端,咱摸魚(yú)可以,但服務(wù)器必須穩(wěn)如老狗!

一、Nginx 是啥?能摸魚(yú)嗎?

簡(jiǎn)單說(shuō),Nginx 是個(gè)高性能的「反向代理服務(wù)器」,就像你公司門(mén)口的保安:

  • ? 外部請(qǐng)求先經(jīng)過(guò)它,再轉(zhuǎn)發(fā)到你的后端服務(wù)(反向代理)

  • ? 它能同時(shí)處理上萬(wàn)個(gè)并發(fā)連接,比 Tomcat 單線(xiàn)程傻等強(qiáng) 100 倍(高并發(fā)處理)

  • ? 還能幫你處理靜態(tài)文件、壓縮數(shù)據(jù)、防惡意攻擊(摸魚(yú)時(shí)的安全保鏢)

舉個(gè)栗子:寫(xiě)了個(gè)電商接口,直接暴露 IP 怕被攻擊?讓 Nginx 當(dāng)「中間人」,外部只知道 Nginx 的地址,真實(shí)服務(wù)器 IP 藏得嚴(yán)嚴(yán)實(shí)實(shí),安心摸魚(yú)不怕被抓包!

二、實(shí)戰(zhàn)場(chǎng)景一:反向代理 & 負(fù)載均衡(高并發(fā)必備)

場(chǎng)景:多個(gè)后端服務(wù)負(fù)載不均,大促時(shí)部分服務(wù)器被壓爆

配置目標(biāo):讓 Nginx 把請(qǐng)求均勻轉(zhuǎn)發(fā)到 3 臺(tái)后端服務(wù)器,隱藏真實(shí) IP,還能自動(dòng)剔除掛掉的節(jié)點(diǎn)

# 全局配置:定義Nginx運(yùn)行的基本參數(shù) user  nginx;  # 運(yùn)行用戶(hù),默認(rèn)就行 worker_processes  1;  # 工作進(jìn)程數(shù),一般設(shè)為CPU核心數(shù),摸魚(yú)主機(jī)設(shè)1也行 # 錯(cuò)誤日志和PID文件 error_log  /var/log/nginx/error.log warn; pid        /var/run/nginx.pid; # 負(fù)載均衡配置:定義后端服務(wù)器列表 upstream backend_servers {     # 輪詢(xún)策略:默認(rèn)按順序轉(zhuǎn)發(fā)請(qǐng)求     server 192.168.1.10:8080;  # 后端服務(wù)器A     server 192.168.1.11:8080;  # 后端服務(wù)器B     server 192.168.1.12:8080;  # 后端服務(wù)器C          # 進(jìn)階配置:健康檢查(服務(wù)器掛了自動(dòng)踢掉)     least_conn;  # 最小連接數(shù)策略,哪個(gè)服務(wù)器空閑就轉(zhuǎn)發(fā)給誰(shuí)     keepalive 32;  # 保持32個(gè)長(zhǎng)連接,減少TCP三次握手開(kāi)銷(xiāo)     proxy_next_upstream error timeout http_500;  # 轉(zhuǎn)發(fā)失敗時(shí),自動(dòng)重試下一臺(tái)服務(wù)器 } # 服務(wù)器配置:定義Nginx對(duì)外提供服務(wù)的端口和規(guī)則 server {     listen       80;  # 監(jiān)聽(tīng)80端口(HTTP)     server_name  www.yourdomain.com;  # 域名,改成你的域名或IP          # 反向代理規(guī)則:所有以/api/開(kāi)頭的請(qǐng)求轉(zhuǎn)發(fā)到后端服務(wù)器     location /api/ {         proxy_pass http://backend_servers/;  # 轉(zhuǎn)發(fā)到upstream定義的服務(wù)器組                  # 傳遞客戶(hù)端真實(shí)IP(后端需要獲取用戶(hù)IP時(shí)用)         proxy_set_header Host $host;         proxy_set_header X-Real-IP $remote_addr;         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;                  # 超時(shí)配置:防止某個(gè)請(qǐng)求長(zhǎng)時(shí)間阻塞         proxy_connect_timeout 30s;         proxy_read_timeout 60s;         proxy_send_timeout 60s;     } }

摸魚(yú)關(guān)鍵點(diǎn):

  • ? 后端服務(wù)器 IP 全藏在 Nginx 里,外部只能訪問(wèn) Nginx 的公網(wǎng) IP;

  • ? 大促時(shí)流量均勻分散到 3 臺(tái)服務(wù)器,再也不用擔(dān)心自己寫(xiě)的接口被壓崩。

三、實(shí)戰(zhàn)場(chǎng)景二:靜態(tài)資源處理 & 動(dòng)靜分離(網(wǎng)頁(yè)加載速度起飛)

場(chǎng)景:前端小姐姐抱怨圖片 / JS 加載慢,甩鍋說(shuō)后端接口卡

配置目標(biāo):讓 Nginx 直接處理圖片、CSS、JS 等靜態(tài)文件,減輕后端壓力

server {     listen       80;     server_name  www.yourdomain.com;     # 靜態(tài)資源路徑:假設(shè)圖片存在/data/images/,JS/CSS在/data/static/     location /static/ {         root /data/;  # 根路徑,實(shí)際文件路徑是/data/static/...         autoindex off;  # 禁止列出目錄(安全考慮)         expires 30d;  # 瀏覽器緩存30天,減少重復(fù)請(qǐng)求         gzip on;  # 開(kāi)啟壓縮,減小文件傳輸大小         gzip_types text/css application/javascript image/png;  # 壓縮類(lèi)型     }     location /images/ {         root /data/;         # 防盜鏈:防止其他網(wǎng)站盜用你的圖片         valid_referers none blocked www.yourdomain.com;         if ($invalid_referer) {             return 403;  # 非法引用返回403錯(cuò)誤         }     }     # 動(dòng)態(tài)請(qǐng)求(如登錄接口)還是轉(zhuǎn)發(fā)給后端     location /api/ {         proxy_pass http://backend_servers/;     } }

摸魚(yú)關(guān)鍵點(diǎn):

  • ? 靜態(tài)文件直接由 Nginx 返回,速度比后端處理快 10 倍以上;

  • ? 瀏覽器緩存 + 壓縮,用戶(hù)第二次訪問(wèn)秒加載,前端小姐姐再也不甩鍋。

四、實(shí)戰(zhàn)場(chǎng)景三:限流防刷 & IP 黑白名單(防惡意攻擊)

場(chǎng)景:接口被惡意 IP 高頻訪問(wèn),服務(wù)器日志爆滿(mǎn)

配置目標(biāo):限制單個(gè) IP 的并發(fā)連接數(shù)和請(qǐng)求頻率,拉黑惡意 IP

# 先定義限流策略,放在http塊里(和upstream同級(jí)) http {     # 1. 并發(fā)連接限制:?jiǎn)蝹€(gè)IP最多同時(shí)保持10個(gè)連接     limit_conn_zone $binary_remote_addr zone=ip_conn:10m;  # 定義存儲(chǔ)IP連接數(shù)的共享內(nèi)存區(qū)     # 2. 請(qǐng)求頻率限制:?jiǎn)蝹€(gè)IP每秒最多5個(gè)請(qǐng)求(令牌桶算法)     limit_req_zone $binary_remote_addr zone=ip_req:10m rate=5r/s;  # 每秒生成5個(gè)令牌     # 3. 黑白名單:定義允許/禁止訪問(wèn)的IP段     set $allow_ip "192.168.1.0/24";  # 允許訪問(wèn)的內(nèi)網(wǎng)IP段     deny 10.0.0.1;  # 單獨(dú)禁止某個(gè)IP } server {     listen 80;     server_name www.yourdomain.com;     location /api/login {  # 登錄接口重點(diǎn)保護(hù)         # 應(yīng)用并發(fā)連接限制:每個(gè)IP最多10個(gè)并發(fā)連接         limit_conn ip_conn 10;         # 應(yīng)用請(qǐng)求頻率限制:突發(fā)請(qǐng)求最多排隊(duì)10個(gè)(超出返回503)         limit_req zone=ip_req burst=10 nodelay;                  # 黑白名單檢查         if ($remote_addr !~* $allow_ip) {  # 如果IP不在允許列表             return 403;  # 禁止訪問(wèn)         }         proxy_pass http://backend_servers/;     } }

摸魚(yú)關(guān)鍵點(diǎn):

  • ? 惡意 IP 頻繁刷接口?直接返回 403,服務(wù)器日志再也不會(huì)爆了;

  • ? 登錄接口限流后,再也不用擔(dān)心被 CC 攻擊打崩。

五、實(shí)戰(zhàn)場(chǎng)景四:HTTPS 配置(數(shù)據(jù)加密傳輸)

場(chǎng)景:用戶(hù)反饋登錄時(shí)瀏覽器提示「不安全」,被產(chǎn)品經(jīng)理罵哭

配置目標(biāo):啟用 HTTPS,讓數(shù)據(jù)加密傳輸,瀏覽器顯示小綠鎖

server {     listen       443 ssl;  # 監(jiān)聽(tīng)443端口(HTTPS)     server_name  www.yourdomain.com;     # 證書(shū)路徑(從CA機(jī)構(gòu)申請(qǐng)的證書(shū)和私鑰)     ssl_certificate      /etc/nginx/ssl/yourdomain.crt;     ssl_certificate_key  /etc/nginx/ssl/yourdomain.key;     ssl_protocols TLSv1.2 TLSv1.3;  # 啟用安全的TLS協(xié)議版本     ssl_ciphers ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384;  # 加密算法     ssl_prefer_server_ciphers on;  # 優(yōu)先使用服務(wù)器端的加密算法     # 重定向HTTP到HTTPS(讓用戶(hù)輸入http自動(dòng)轉(zhuǎn)https)     rewrite ^(.*)$ https://$host$1 permanent;     location / {         proxy_pass http://backend_servers/;     } }

摸魚(yú)關(guān)鍵點(diǎn):

  • ? 小綠鎖一亮,產(chǎn)品經(jīng)理再也挑不出毛??;

  • ? 數(shù)據(jù)加密傳輸,用戶(hù)密碼不怕被中間人竊取。


六、如何讓 Nginx 跑起來(lái)?(摸魚(yú)式部署)1.安裝 Nginx:
  • ?Linux:yum install nginx(CentOS)或apt-get install nginx(Ubuntu)

  • ?Windows:官網(wǎng)下載解壓,雙擊nginx.exe(摸魚(yú)專(zhuān)用)

2.啟動(dòng) / 重啟:

sudo systemctl start nginx  # 啟動(dòng) sudo systemctl restart nginx  # 改完配置后重啟
3.檢查配置是否正確:

nginx -t  # 報(bào)錯(cuò)的話(huà)回去改配置,別硬啟動(dòng)!

總結(jié):Nginx 摸魚(yú)指南
  • ?反向代理:藏好后端 IP,安心摸魚(yú)不怕攻擊;

  • ?負(fù)載均衡:流量均分,再也不用背鍋服務(wù)器崩了;

  • ?靜態(tài)資源:讓 Nginx 處理圖片 JS,后端專(zhuān)注寫(xiě)接口;

  • ?限流防刷:惡意請(qǐng)求全攔下,日志清凈心情好;

  • ?HTTPS:小綠鎖一掛,產(chǎn)品經(jīng)理笑哈哈。

記?。篘ginx 配置不是一次性的!上線(xiàn)后要根據(jù)服務(wù)器壓力、用戶(hù)反饋動(dòng)態(tài)調(diào)整,比如大促時(shí)加大限流閾值,發(fā)現(xiàn)惡意 IP 及時(shí)拉黑。

最后送大家一句摸魚(yú)箴言:代碼可以慢慢寫(xiě),Nginx 必須穩(wěn)如狗;配置寫(xiě)對(duì)了,摸魚(yú)才安心!

來(lái)源:https://juejin.cn/post/7510819038953930763

公眾號(hào)“Java精選”所發(fā)表內(nèi)容注明來(lái)源的,版權(quán)歸原出處所有(無(wú)法查證版權(quán)的或者未注明出處的均來(lái)自網(wǎng)絡(luò),系轉(zhuǎn)載,轉(zhuǎn)載的目的在于傳遞更多信息,版權(quán)屬于原作者。如有侵權(quán),請(qǐng)聯(lián)系,筆者會(huì)第一時(shí)間刪除處理!

最近有很多人問(wèn),有沒(méi)有讀者交流群!加入方式很簡(jiǎn)單,公眾號(hào)Java精選,回復(fù)“加群”,即可入群!

文章有幫助的話(huà),點(diǎn)在看,轉(zhuǎn)發(fā)吧!

特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶(hù)上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相關(guān)推薦
熱點(diǎn)推薦
美國(guó)吃華人絕戶(hù)財(cái)富已經(jīng)成為一個(gè)公開(kāi)的密碼了!

美國(guó)吃華人絕戶(hù)財(cái)富已經(jīng)成為一個(gè)公開(kāi)的密碼了!

達(dá)文西看世界
2026-01-24 15:32:33
中國(guó)金花距離澳網(wǎng)決賽一步之遙,女單冠軍爭(zhēng)奪戰(zhàn)逐漸明朗

中國(guó)金花距離澳網(wǎng)決賽一步之遙,女單冠軍爭(zhēng)奪戰(zhàn)逐漸明朗

體育豐蘊(yùn)
2026-01-29 16:08:58
國(guó)產(chǎn)固態(tài)電池量產(chǎn)加速!數(shù)千萬(wàn)新能源車(chē)主,恐成最大“接盤(pán)俠”?

國(guó)產(chǎn)固態(tài)電池量產(chǎn)加速!數(shù)千萬(wàn)新能源車(chē)主,恐成最大“接盤(pán)俠”?

胖福的小木屋
2026-01-28 10:43:40
剖人心者終被食:亂世惡棍張彥澤的結(jié)局比電視上還慘

剖人心者終被食:亂世惡棍張彥澤的結(jié)局比電視上還慘

愛(ài)歷史
2026-01-28 10:07:37
價(jià)格大跳水!主力車(chē)型直降超15萬(wàn),中年男人的夢(mèng)中豪車(chē)撐不住了?

價(jià)格大跳水!主力車(chē)型直降超15萬(wàn),中年男人的夢(mèng)中豪車(chē)撐不住了?

財(cái)經(jīng)八卦
2026-01-28 20:05:03
女子用剁椒魚(yú)頭試探“網(wǎng)戀男友”,仍被騙68萬(wàn)

女子用剁椒魚(yú)頭試探“網(wǎng)戀男友”,仍被騙68萬(wàn)

中國(guó)日?qǐng)?bào)
2026-01-29 12:00:59
編程門(mén)檻被壓到799美元?“那個(gè)拿著Mac Mini+Claude的「門(mén)外漢」,搶走了程序員3個(gè)月的活!”

編程門(mén)檻被壓到799美元?“那個(gè)拿著Mac Mini+Claude的「門(mén)外漢」,搶走了程序員3個(gè)月的活!”

CSDN
2026-01-27 18:10:04
阿富汗塔利班恢復(fù)奴隸制?

阿富汗塔利班恢復(fù)奴隸制?

孫曉宇
2026-01-28 14:18:17
貝森特再點(diǎn)卡尼:你這種人我見(jiàn)得多了,別搞事

貝森特再點(diǎn)卡尼:你這種人我見(jiàn)得多了,別搞事

觀察者網(wǎng)
2026-01-29 08:51:38
周總理逝世21年后,中國(guó)銀行核查賬目時(shí)發(fā)現(xiàn)他名下存有巨額存款,一番調(diào)查后揭開(kāi)了背后的真相

周總理逝世21年后,中國(guó)銀行核查賬目時(shí)發(fā)現(xiàn)他名下存有巨額存款,一番調(diào)查后揭開(kāi)了背后的真相

寄史言志
2026-01-17 16:37:15
無(wú)法復(fù)制的價(jià)值!95年喬丹第一次復(fù)出有多轟動(dòng)?魔術(shù)師曾為他下跪

無(wú)法復(fù)制的價(jià)值!95年喬丹第一次復(fù)出有多轟動(dòng)?魔術(shù)師曾為他下跪

禾三千體育
2026-01-29 16:42:32
要打就打痛!中國(guó)手段已升級(jí),日本:中方不批準(zhǔn)駐重慶總領(lǐng)事任命

要打就打痛!中國(guó)手段已升級(jí),日本:中方不批準(zhǔn)駐重慶總領(lǐng)事任命

墨蘭史書(shū)
2026-01-28 20:45:03
偉大的2-0!中國(guó)金花直通澳網(wǎng)決賽:解鎖2大成就,爭(zhēng)冠對(duì)手確定!

偉大的2-0!中國(guó)金花直通澳網(wǎng)決賽:解鎖2大成就,爭(zhēng)冠對(duì)手確定!

劉姚堯的文字城堡
2026-01-29 16:33:24
本期禁足名單分布:31名球員、6名教練、17名足協(xié)官員、1名裁判

本期禁足名單分布:31名球員、6名教練、17名足協(xié)官員、1名裁判

慢歌輕步謠
2026-01-29 14:03:07
陳永貴夫人宋玉林離世,葬禮之上郭鳳蓮致悼詞,現(xiàn)場(chǎng)人山人海滿(mǎn)是悲戚

陳永貴夫人宋玉林離世,葬禮之上郭鳳蓮致悼詞,現(xiàn)場(chǎng)人山人海滿(mǎn)是悲戚

文史明鑒
2026-01-22 17:37:12
金價(jià)創(chuàng)新高!黃金變現(xiàn)業(yè)務(wù)爆了

金價(jià)創(chuàng)新高!黃金變現(xiàn)業(yè)務(wù)爆了

環(huán)球網(wǎng)資訊
2026-01-29 11:28:09
能否逆轉(zhuǎn)銷(xiāo)量?曝特斯拉即將推出Model YL+,88度電池,續(xù)航800km

能否逆轉(zhuǎn)銷(xiāo)量?曝特斯拉即將推出Model YL+,88度電池,續(xù)航800km

凡兮說(shuō)
2026-01-29 16:44:36
大S雕像揭幕儀式即將開(kāi)啟,出席人員曝光!汪小菲有望上金寶山!

大S雕像揭幕儀式即將開(kāi)啟,出席人員曝光!汪小菲有望上金寶山!

娛樂(lè)團(tuán)長(zhǎng)
2026-01-29 12:26:42
再打下去,烏克蘭沒(méi)男人了!澤連斯基解禁,允許年輕男性出國(guó)避難

再打下去,烏克蘭沒(méi)男人了!澤連斯基解禁,允許年輕男性出國(guó)避難

史智文道
2026-01-29 16:22:57
阿森納全勝領(lǐng)銜 英超隊(duì)踢歐冠怎么就如此輕松?

阿森納全勝領(lǐng)銜 英超隊(duì)踢歐冠怎么就如此輕松?

體壇周報(bào)
2026-01-29 16:16:23
2026-01-29 17:23:00
Java精選
Java精選
一場(chǎng)永遠(yuǎn)也演不完的戲
1768文章數(shù) 3859關(guān)注度
往期回顧 全部

科技要聞

周亞輝的AI新賭局:國(guó)內(nèi)太卷 出海另起爐灶

頭條要聞

女大學(xué)生到東北游玩暈倒雪地凍傷 三根手指或面臨截肢

頭條要聞

女大學(xué)生到東北游玩暈倒雪地凍傷 三根手指或面臨截肢

體育要聞

詹姆斯哭了!騎士視頻致敬41歲超巨

娛樂(lè)要聞

張譯不再隱瞞!公開(kāi)回應(yīng)退圈息影真相

財(cái)經(jīng)要聞

崔東樹(shù):中國(guó)汽車(chē)未來(lái)年銷(xiāo)或達(dá)5000萬(wàn)輛

汽車(chē)要聞

車(chē)長(zhǎng)超5米還帶后輪轉(zhuǎn)向 比亞迪海豹08/海獅08將亮相

態(tài)度原創(chuàng)

房產(chǎn)
數(shù)碼
親子
健康
軍事航空

房產(chǎn)要聞

萬(wàn)科難眠夜:前董事長(zhǎng)郁亮失聯(lián),三筆債券靠深鐵才通過(guò)展期

數(shù)碼要聞

這種電熱水袋國(guó)家早已禁售:別再用了

親子要聞

一個(gè)現(xiàn)象:縣城里的孕婦越來(lái)越少了

耳石癥分類(lèi)型,癥狀大不同

軍事要聞

中國(guó)代表:支持伊朗國(guó)家穩(wěn)定 武力解決不了問(wèn)題

無(wú)障礙瀏覽 進(jìn)入關(guān)懷版