NGINX : 如何屏蔽未被定义的虚拟主机的访问
参考: [ how to prevent undefined server names ]
nginx 的默认虚拟主机
Nginx 支持基于域名和端口的虚拟主机(virtual host), 根据获取的 $host 和 $server_port 将请求分配给对应的虚拟主机.
而如果一个请求被解析到 webserver, 但是并未配置其对应的虚拟主机, 则会将请求转发给 默认虚拟主机(default server).
默认虚拟主机可以使用 default_server 指定, 比如:
server {
listen 80 default_server;
server_name example.net www.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 www.example.org;
...
}
server {
listen 80;
server_name example.net www.example.net;
...
}
这样, 就可以将未被定义的虚拟主机访问屏蔽掉. 主要应用是屏蔽用 IP 地址访问 WebServer.
NGINX : 如何屏蔽未被定义的虚拟主机的访问的更多相关文章
- Nginx入门篇(三)之虚拟主机配置
一.虚拟主机概念 所谓虚拟主机,在Web服务当中就是一个独立的网站站点,这个站点对应独立的域名(也有可能是IP或者端口),具有独立的程序和资源目录,可以独立地对外提供服务供用户访问. 这个独立的站点在 ...
- Nginx的配置文件简介及在Nginx中配置基于不同ip的虚拟主机
Nginx的配置文件简介及在Nginx中配置基于不同ip的虚拟主机: #user nobody; worker_processes 1; #error_log logs/error.log; #err ...
- 关于apache 虚拟主机配置访问403的问题
<Directory /> Options FollowSymLinks Order allow,deny Allow from all</Directory&g ...
- nginx学习(2):启动gzip、虚拟主机、请求转发、负载均衡
一.启用gzip gzip on; gzip_min_length 1k; gzip_buffers 4 16k; gzip_http_version 1.1; gzip_comp_level 2; ...
- Nginx入门讲解——初步认识了解nginx.conf配置文件以及配置多个虚拟主机
本文引自网络进攻学习之用https://blog.csdn.net/weixin_38111957/article/details/81080539 一. 引言上节文章讲述了如何用信号控制Nginx服 ...
- Nginx配置多个基于域名的虚拟主机+实验环境搭建+测试
标签:Linux 域名 Nginx 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://xpleaf.blog.51cto.com/9 ...
- Nginx学习笔记(二)--- 配置虚拟主机
Linux下安装Nginx https://www.cnblogs.com/dddyyy/p/9780705.html 1.虚拟主机介绍 一台服务器分成多个"独立"的主机,每台虚 ...
- nginx篇最初级用法之SSL虚拟主机
注意:在源码安装nginx时必须要使用--with-http_ssl_module参数启动加密模块. openssl genrsa > cert.key //使用openssl自己签发私钥 o ...
- nginx篇最初级用法之三种虚拟主机基于域名\基于端口\基于IP地址端口的虚拟主机
在nginx中虚拟主机的类型与apache一样也有三种 1.基于域名的虚拟主机 2.基于端口的虚拟主机 3.基于IP地址端口的虚拟主机 在nginx配置文件中每一个server为一个虚拟主机如果需要多 ...
随机推荐
- PostgreSQL 数据库升级
PostgreSQL软件版本升级后,需要使用pg_upgrade迁移旧版本的数据库,具体的操作参数可以参考官方文档,在此记录一下操作过程中出现的细节问题: 新版本软件在initdb的时候要保证loca ...
- 25、react入门教程
0. React介绍 0.1 什么是React? React(有时称为React.js 或ReactJS)是一个为数据提供渲染HTML视图的开源JavaScript库. 它由FaceBook.Inst ...
- svn 用cmd命令行启动服务
部署好svn 服务器后,用cmd命令行 svnserve -d -r [仓库地址] 启动服务,这样别的用户可以通过网络访问svn服务器了.
- 常用模块(xml)
XML(可扩展性标记语言)是一种非常常用的文件类型,主要用于存储和传输数据.在编程中,对XML的操作也非常常见. 本文根据python库文档中的xml.etree.ElementTree类来进行介绍X ...
- 孤荷凌寒自学python第六十九天学习并实践beautifulsoup对象用法2
孤荷凌寒自学python第六十九天学习并实践beautifulsoup对象用法2 (完整学习过程屏幕记录视频地址在文末) 今天继续学习beautifulsoup对象的属性与方法等内容. 一.今天进一步 ...
- 目标检测之Faster-RCNN的pytorch代码详解(模型训练篇)
本文所用代码gayhub的地址:https://github.com/chenyuntc/simple-faster-rcnn-pytorch (非本人所写,博文只是解释代码) 好长时间没有发博客了 ...
- 容器基础(七): 使用docker compose部署程序
配置 在上一节的基础上, 增加如下的docker-compose.yml文件, 然后用docker-compose up命令启动容器进行部署: version: " services: s ...
- [leetcode-652-Find Duplicate Subtrees]
Given a binary tree, return all duplicate subtrees. For each kind of duplicate subtrees, you only ne ...
- multi-tap
multi-tap又称 multi-press . 是在手机,或者电视遥控上的keypad定义,有如下2类标准: 1. ITU-T E.161 2.T9 使用举例如下: Consider a typi ...
- (转)Nginx配置和内核优化 实现突破十万并发
nginx指令中的优化(配置文件) worker_processes 8; nginx进程数,建议按照cpu数目来指定,一般为它的倍数. worker_cpu_affinity 00000001 00 ...