NGINX 如何遮蔽未被定義的虛擬主機的訪問
NGINX 如何遮蔽未被定義的虛擬主機的訪問,搞清楚 nginx 虛擬主機匹配規則, 那麼就可以在預設的虛擬主機裡 遮蔽未被定義的虛擬主機訪問 |
nginx 的預設虛擬主機
Nginx 支援基於域名和埠的虛擬主機(virtual host), 根據獲取的
$host
和
$server_port
將請求分配給對應的虛擬主機.
而如果一個請求被解析到 webserver, 但是並未配置其對應的虛擬主機, 則會將請求轉發給 預設虛擬主機(default server).
預設虛擬主機可以使用 default_server 指定, 比如:
server { listen 80 default_server; server_name example.net ... }
而如果沒有使用定義,則用 第一個虛擬主機 的規則處理請求. 比如是 nginx.conf 的第一個虛擬主機, 或者是 conf.d 內 排序第一個 的配置檔案的 第一個虛擬主機 的規則處理請求.
比如, nginx.conf 配置檔案內沒有配置虛擬主機, 而是都包含在 conf.d, 在 conf.d 下有: a.conf, b.conf, c.conf... 則處理請求的規則是 a.conf 中定義的第一個 虛擬主機.
遮蔽未被定義的虛擬主機訪問
搞清楚 nginx 虛擬主機匹配規則, 那麼就可以在預設的虛擬主機裡遮蔽未被定義的虛擬主機訪問.
server { listen 80 default_server; server_name ""; return 444;}server { listen 80; server_name example.org ...}server { listen 80; server_name example.net ...}
這樣, 就可以將未被定義的虛擬主機訪問遮蔽掉. 主要應用是遮蔽用 IP 地址訪問 WebServer.
原文地址:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31559985/viewspace-2736706/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Nginx執行控制虛擬主機和訪問控制Nginx
- Nginx虛擬主機配置Nginx
- nginx虛擬主機實戰Nginx
- 007.Nginx虛擬主機Nginx
- 在虛擬機器上搭建主機可訪問的web服務虛擬機Web
- Nginx 虛擬主機配置的三種方式(基於域名)Nginx
- 如何檢視虛擬主機的php版本PHP
- nginx基礎篇之虛擬主機實戰Nginx
- 如何選擇適合自己的虛擬主機
- 如何判斷雲虛擬主機的好壞?
- 宿主機訪問虛擬機器內的Docker靜態IP虛擬機Docker
- 虛擬主機使用中可能出現的問題
- Nginx中關於虛擬主機的一點冷門知識Nginx
- nginx伺服器配置多個虛擬主機vhost的方法示例Nginx伺服器
- 詳解Nginx 虛擬主機配置的三種方式(基於埠)Nginx
- 詳解Nginx 虛擬主機配置的三種方式(基於IP)Nginx
- Nginx 配置二級虛擬目錄訪問 Laravel 重寫NginxLaravel
- Nginx虛擬主機常用配置(學習筆記四)Nginx筆記
- VMware虛擬機器如何設定使主機和虛擬機器不同IP虛擬機
- 記一次程式訪問無法訪問虛擬機器部署的服務虛擬機
- 虛擬機器 與 host主機,無法ping通的問題虛擬機
- 本地訪問虛擬機器(Vmware)環境下配置的域名虛擬機
- 福音 虛擬主機
- 基於 LNMP 的 Nginx 百萬併發之路 (三)基於域名的虛擬主機LNMPNginx
- nginx 是如何禁止訪問php的NginxPHP
- Apache 虛擬主機裡的 ServerName 指令ApacheServer
- GOland配置ssh訪問Linux/Manjaro虛擬機器GoLandLinuxJAR虛擬機
- 未被定義的 “智慧座艙”,如何將產業化進行到底產業
- 虛擬機器如何和主機相互通訊虛擬機
- 關於解決主機和虛擬機器ping不通的問題虛擬機
- 主機與virtualbox虛擬機器的互ping虛擬機
- 基於虛擬機器的黑群暉NAS+基於虛擬區域網的遠端訪問虛擬機
- 虛擬主機和VPS主機之間的幾點不同
- 如何選擇合適的免備案虛擬主機呢?
- 如何給虛擬機器中centos7設定靜態ip和能夠訪問外網虛擬機CentOS
- 詳聊虛擬主機的優缺點
- 訪問不了虛擬機器80埠,怎麼回事?虛擬機
- 美國雲主機與傳統虛擬主機的區別