亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

nginx多域名轉發如何實現

發布時間:2023-03-07 17:37:42 來源:億速云 閱讀:110 作者:iii 欄目:開發技術

這篇文章主要介紹“nginx多域名轉發如何實現”,在日常操作中,相信很多人在nginx多域名轉發如何實現問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”nginx多域名轉發如何實現”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

基礎概念

DNS

DNS是Domain Name System的縮寫,即域名系統。DNS是internet的一項服務,一般叫域名服務或者域名解析服務,主要是提供網站域名與ip地址的相互轉換的服務。

域名和IP的對應關系

域名與IP地址之間是呈一一對應的關系,但多個域名可以對應同一個IP地址。就像一個人的姓名和身份證號碼之間的關系,顯然記憶人的名字要比身份證號容易的多。IP地址是網絡上標識用戶站點的數字地址,為了簡單好記,采用域名來代替IP地址表示站點地址,DNS講域名解析成IP地址,使其一一對應。

DNS工作原理

在Internet上,一個域名要由兩臺域名服務器提供“權威性的”域名解析。如果是國際域名,域名注冊管理機構就是Interinc,如果是國內域名,域名注冊管理機構就是CNNIC。所有的域名必須在兩個注冊機構上注冊才能正常使用。

比如,你現在要訪問一個網站,例如www.baidu.com,你的電腦需要知道這個站點的IP地址是多少才能訪問。于是它會自動向您所在區域的“主控DNS”服務器發出詢問,即“www.baidu.com”的IP是多少?如果該服務器上沒有該域名的記錄,它會到上一級的DNS去查找,一直重復進行直到找到為止,如果到最后一級仍然沒有找到。此時會到權威性的DNS上查找,然后把對應的ip信息返回給你的電腦。你的電腦就可以與www.baidu.com對應的服務器進行通信了。這樣一級一級的查詢被稱為“遞歸式”的查詢。

hosts文件

hosts文件是本地的一個無后綴的系統文件,需要管理員權限才能修改其內容。從上面DNS的解析過程可以看出,每次DNS解析可能會經過很多DNS服務器的轉發最終才能獲取到真正的IP地址,這樣會很沒效率。所以在計算機的本地也有一個DNS解析文件,即hosts文件。當你把hosts中的 www.baidu.com指向正確的百度服務器地址的時候,電腦會與正確的服務器進行交互。如果本地hosts,沒有配置映射關系,那么它會到局域網的DNS服務器尋找對應的映射關系。如果仍然沒有,它就會在本地對應節點的DNS去查找,重復上面所說的步驟。

nginx反向代理

代理:其實就是中介,A和B本來可以直連,但是在A和B之間加入了C。 正向代理

即上面的dns,它代理的是客戶端,為客戶端收發請求,對server斷是透明的。用瀏覽器訪問 http://www.google.com 時,被殘忍的block,于是你可以在國外搭建一臺代理服務器,讓代理幫我去請求google.com,代理把請求返回的相應結構再返回給我。

nginx多域名轉發如何實現

反向代理

即nginx的一個功能,它代理的是服務器,它為server端轉發請求,對client端是透明的。當我們請求 www.baidu.com 的時候,就像撥打10086一樣,背后可能有成千上萬臺服務器為我們服務,但具體是哪一臺,你不知道,也不需要知道,你只需要知道反向代理服務器是誰就好了,www.baidu.com 就是我們的反向代理服務器,反向代理服務器會幫我們把請求轉發到真實的服務器那里去。Nginx就是性能非常好的反向代理服務器,用來做負載均衡

nginx多域名轉發如何實現

nginx加hosts做多域名映射

比如你的兩個應用的域名是a.test.com和b.test.com。

找到C:WindowsSystem32driversetc目錄下的hosts文件,用超級管理員權限打開。在文件尾部加入

a.test.com 127.0.0.1
b.test.com 127.0.0.1

修改nginx.conf文件(由于nginx.conf的配置很多,這里只是用最簡單的事例說明)在http的{}內部加入server。加入內容如下:

server {
  listen 80;
  server_name a.test.com;   //填入自己項目對應的域名
  charset utf-8;
  error_log logs/error.log;
  location / {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_set_header X-NginX-Proxy true;
    proxy_pass http://127.0.0.1:8888; //填入自己項目的ip加端口號(此處的項目沒有工程上下文,只有端口號)
  }
}

server {
  listen 80;
  server_name b.test.com;   //填入自己項目對應的域名
  charset utf-8;
  error_log logs/error.log;
  location / {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_set_header X-NginX-Proxy true;
    proxy_pass http://127.0.0.1:8889; //填入自己項目的ip加端口號(此處的項目沒有工程上下文,只有端口號)
  }
}

修改完以后,再重新加載nginx配置文件

nginx.exe -s reload

到此,關于“nginx多域名轉發如何實現”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

江达县| 平度市| 武鸣县| 绥宁县| 临潭县| 阿拉善左旗| 车致| 岳池县| 临沧市| 申扎县| 鲁山县| 肇东市| 屯门区| 郓城县| 鄂托克旗| 蒙山县| 河北省| 曲阜市| 乌兰浩特市| 景泰县| 新民市| 兴山县| 英德市| 南宫市| 长阳| 阿巴嘎旗| 虞城县| 玛纳斯县| 朝阳县| 平遥县| 阿克| 贵州省| 香格里拉县| 杂多县| 两当县| 金沙县| 梧州市| 宜兴市| 聂拉木县| 垫江县| 阳城县|