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虛擬主機VirtualHost配置Nginx
- nginx虛擬主機實戰Nginx
- 【Nginx】nginx虛擬機器設定Nginx虛擬機
- 007.Nginx虛擬主機Nginx
- Nginx實戰(一) 虛擬主機Nginx
- nginx多個虛擬主機noinputfilespecifiedNginx
- 在虛擬機器上搭建主機可訪問的web服務虛擬機Web
- Nginx配置之基於域名的虛擬主機Nginx
- apache(包含虛擬主機)禁止使用IP訪問的實現方法Apache
- Windows下的虛擬主機設定全功略(轉)Windows
- 虛擬主機商如何搭建下一代虛擬主機
- Nginx 虛擬主機配置的三種方式(基於域名)Nginx
- 配置nginx多例項(不同於虛擬主機)Nginx
- 如何檢視虛擬主機的php版本PHP
- 如何在虛擬主機設定301定向
- nginx基礎篇之虛擬主機實戰Nginx
- 從ubuntu虛擬機器外部訪問虛擬機器內部資訊Ubuntu虛擬機
- 宿主機訪問虛擬機器內的Docker靜態IP虛擬機Docker
- nginx伺服器配置多個虛擬主機vhost的方法示例Nginx伺服器
- 詳解Nginx 虛擬主機配置的三種方式(基於埠)Nginx
- 詳解Nginx 虛擬主機配置的三種方式(基於IP)Nginx
- Nginx中關於虛擬主機的一點冷門知識Nginx
- VMware虛擬機器如何設定使主機和虛擬機器不同IP虛擬機
- Nginx虛擬主機常用配置(學習筆記四)Nginx筆記
- 福音 虛擬主機
- nginx之 nginx虛擬機器配置Nginx虛擬機
- Nginx 配置二級虛擬目錄訪問 Laravel 重寫NginxLaravel
- 虛擬機器如何和主機相互通訊虛擬機
- Jboss修改預設介面(設定虛擬主機)
- 爛泥:使用nginx利用虛擬主機搭建WordPress部落格Nginx
- 記一次程式訪問無法訪問虛擬機器部署的服務虛擬機
- Apache 虛擬主機裡的 ServerName 指令ApacheServer
- 未被定義的 “智慧座艙”,如何將產業化進行到底產業
- 基於 LNMP 的 Nginx 百萬併發之路 (三)基於域名的虛擬主機LNMPNginx
- 本地訪問虛擬機器(Vmware)環境下配置的域名虛擬機