頂級域名與子域名解析到同一服務器的Nginx代理問題

問題

頂級域名 a.com 和子域名 b.a.com 解析到同一個服務器IP,但被 Nginx 同一化處理。我的預期是 Nginx 分別代理兩個域名。
Nginx 當前關鍵配置:

server {
  listen 80;
  server_name a.com;

  location / {
    proxy_pass http://127.0.0.1:8080/APIs/;
  }
}

解決

server {
  listen 80;
  server_name a.com www.a.com;

  location / {
    proxy_pass http://127.0.0.1:8080/Hello/;
  }
}

server {
  listen 80;
  server_name b.a.com;

  location / {
    proxy_pass http://127.0.0.1:8080/APIs/;
  }
}

拓展

Nginx 對 server_name 的匹配順序:

  1. 準確字符串
server {
  listen 80;
  server_name a.com www.a.com;
}
  1. 以通配符開始的字符串
server {
  listen 80;
  server_name *.a.com;
}
  1. 以通配符結束的字符串
server {
  listen 80;
  server_name www.*;
}
  1. 正則表達式
server {
  listen 80;
  server_name ~^(?.+)\.a\.com$;
}
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 第一章 Nginx簡介 Nginx是什么 沒有聽過Nginx?那么一定聽過它的“同行”Apache吧!Ngi...
    JokerW閱讀 32,803評論 24 1,002
  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,993評論 19 139
  • 1.ngnix介紹 ngnix www服務軟件 俄羅斯人開發 開源 性能很高 本身是一款靜態WWW軟件 靜態小文件...
    逗比punk閱讀 2,131評論 1 6
  • 閱讀之前,建議先閱讀初識 Nginx。 之后,我們來了解一下 Nginx 配置。 抽象來說,將 Nginx 配置為...
    思夢PHP閱讀 1,366評論 2 10
  • 配置運行Nginx服務器用戶(組) 用于配置運行Nginx服務器用戶(組)的指令是user,其語法格式為: use...
    吃瓜的東閱讀 4,547評論 0 41