詳解nginx同一端口監(jiān)聽多個域名和同時監(jiān)聽http與https
詳解nginx同一端口監(jiān)聽多個域名和同時監(jiān)聽http與https
1、同一端口監(jiān)聽多個域名
如今公網(wǎng)ip資源越來越珍貴,多域名監(jiān)聽?wèi)?yīng)用非常廣泛,就是用一個端口,比如80或者443,監(jiān)聽多個入口域名。如下:
server { listen 443 ssl; server_name xxx.xxx.cn; ssl_certificate ssl/server.pem; ssl_certificate_key ssl/server.key; ...... }
在啟用新的域名的時候,只需要另啟一個server配置文件,丟在vhosts目錄下即可,不會報端口被占,這個維護(hù)nginx的大部分人都知道。但是,這里有個地方要注意:不能跨nginx實例。很多同事習(xí)慣在同一虛機(jī)或者云主機(jī)下安裝多個nginx實例,如果你在實例1里面用了某個端口,再在實例2里面用這個端口綁不同域名,那對不起了,報錯妥妥的出來:
nginx: [emerg] bind() to 0.0.0.0:xxxx failed (98: Address already in use) nginx: [emerg] still could not bind()
個人建議:不在同一臺虛機(jī)或者云主機(jī)下安裝多個nginx實例,
2、http和https同時監(jiān)聽
這種需求還是挺多的,有時候我們的證書需要安裝在A10或者F5這類硬負(fù)載均衡上,此時,DMZ區(qū)的服務(wù)器不需要安裝證書,只需要監(jiān)聽http端口即可。但與此同時,內(nèi)網(wǎng)dns直接將A地址指到了服務(wù)器,此時又需要在服務(wù)器上安裝證書。這種場景,就需要服務(wù)器同時對http和https端口進(jìn)行監(jiān)聽,監(jiān)聽https口是為了解析內(nèi)網(wǎng)https域名,監(jiān)聽http口是為了反向代理從DMZ區(qū)過來的http請求。如此,可實現(xiàn)內(nèi)外網(wǎng)https域名統(tǒng)一。
配置如下:
server { listen 8080; listen 443 ssl; server_name xxx.xxx.cn;; ssl_certificate ssl/server.pem; ssl_certificate_key ssl/server.key; ...... }
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
nginx反向代理之將80端口請求轉(zhuǎn)發(fā)到8080
這篇文章主要介紹了nginx反向代理之將80端口請求轉(zhuǎn)發(fā)到8080,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08nginx?80端口配置多個location無效訪問404問題
這篇文章主要介紹了nginx?80端口配置多個location無效訪問404問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-06-06Nginx下WordPress鏈接(url偽靜態(tài))301永久重定向?qū)崿F(xiàn)方法
在幾個blog程序中折騰的結(jié)果,導(dǎo)致url連續(xù)二次變化。這是第三次了。 nginx 通過rewrite 使用 permanent; 參數(shù) 成301永久url重定向2012-09-09