Nginx禁止IP与未绑定域名访问配置

目前国内很多机房都要求网站主关闭空主机头,防止未北岸的域名指向过来造成麻烦。

就可以这样设置:

比如下面这种代码就是使默认访问返回500响应,图谋不轨者的意愿就落空了

1.直接返回500

 代码如下 复制代码

server {
listen 80 default;
return 500;
}

有多种不同方法,比如给默认主机设置500返回,或者直接用rewrite跳转到其他地址,当然也可以修改成跳转到你自己的网站,也能带来流量。

 代码如下 复制代码

server {
listen 80 default;
rewrite ^(.*) http://www.111cn.net permanent;
}

上面方法推荐第一种,下面接着看

主要想法是,将自己的博客作为一个虚拟主机,而IP等访问则是访问default_server,而default_serverv我们可以让它跳转到博客或者直接让它出错。

还是看下面的Nginx.conf吧。

 代码如下 复制代码

 1     server {
 2             listen 80;
 3             server_name serholiu.com;
 4
 5             # Allow file uploads
 6             client_max_body_size 50M;
 7
 8             location ^~ /static/ {
 9                 root /home/blog/app;
10                 if ($query_string) {
11                     expires max;
12                 }
13             }
14             location = /favicon.ico {
15                 rewrite (.*) /static/favicon.ico;
16             }
17             location = /robots.txt {
18                 rewrite (.*) /static/robots.txt;
19             }
20             location / {
21                 proxy_pass_header Server;
22                 proxy_set_header Host $http_host;
23                 proxy_redirect off;
24                 proxy_set_header X-Real-IP $remote_addr;
25                 proxy_set_header X-Scheme $scheme;
26                 proxy_pass http://www.111cn.net;
27         }
28     }

这个是我博客的配置文件,没什么好说的,使用Nginx做反向代理。如果只是这一个Server的话,访问IP或者其他绑定了这个IP的域名也会直接访问本博客,现在只需要一个Default Server就可以了,见下面:

 代码如下 复制代码

1     server {
2            listen  80 default_server;
3            server_name  _;
4
5             location / {
6                 root   /home/www;
7                 index  index.html index.htm;
8             }
9         }

这样,通过IP或者其他未指定的域名就会访问/home/www里的资源了,当然,可以直接让它报错。

时间: 2024-10-01 08:14:18

Nginx禁止IP与未绑定域名访问配置的相关文章

Nginx 禁止IP访问 只允许域名访问_nginx

我们在使用的时候会遇到很多的恶意IP攻击,这个时候就要用到Nginx 禁止IP访问了.下面我们就先看看Nginx的默认虚拟主机在用户通过IP访问,或者通过未设置的域名访问(比如有人把他自己的域名指向了你的ip)的时 候生效最关键的一点是,在server的设置里面添加这一行:listen 80 default; 后面的default参数表示这个是默认虚拟主机. Nginx 禁止IP访问这个设置非常有用. 比如别人通过ip或者未知域名访问你的网站的时候,你希望禁止显示任何有效内容,可以给他返回500

Nginx禁止IP访问配置方法

#禁止IP访问  代码如下 复制代码 server { listen 80 default; server_name _; return 500; } 或者 server { listen 80 dufault; server_name _; rewrite ^(.*) http://www.111cn.net permanent; } 最关键的一点是,在server的设置里面添加这一行:listen 80 default;后面的default参数表示这个是默认虚拟主机

Nginx禁止ip访问或IP网段访问方法

常用的linux做法 iptables参考规则  代码如下 复制代码 iptables -I INPUT -p tcp –dport 80 -m –mac-soruce$MAC -j DROP 基于mac地址的 iptables -I INPUT -p tcp –dport 80 -s $IP -j DROP 基于ip地址的 方法一, 首先建立下面的配置文件放在nginx的conf目录下面,命名为blocksip.conf:   加入以下代码:  代码如下 复制代码 #屏蔽soso蜘蛛IP de

禁止IP访问网站的多种方法分享(linux,php,nginx,apache)_服务器其它

PHP禁止某个IP或IP段访问 废话不多说,客官请看: <? //禁止某个IP $banned_ip = array ( "127.0.0.1", //"119.6.20.66", "192.168.1.4" ); if ( in_array( getenv("REMOTE_ADDR"), $banned_ip ) ) { die ("您的IP禁止访问!"); } //禁止某个IP段 $ban_ran

禁止IP访问网站的各种方法(linux,php,nginx,apache)

PHP禁止某个IP或IP段访问 废话不多说,客官请看:  代码如下 复制代码 <?    //禁止某个IP $banned_ip = array ( "127.0.0.1", //"119.6.20.66", "192.168.1.4" ); if ( in_array( getenv("REMOTE_ADDR"), $banned_ip ) ) { die ("您的IP禁止访问!"); } //禁止

详解CentOS下Nginx如何禁止IP访问_Linux

我们就先看看Nginx的默认虚拟主机在用户通过IP访问,或者通过未设置的域名访问(比如有人把他自己的域名指向了你的ip)的时候生效最关键的一点是,在server的设置里面添加这一行: listen 80 default; 后面的default参数表示这个是默认虚拟主机. Nginx 禁止IP访问这个设置非常有用. 比如别人通过ip或者未知域名访问你的网站的时候,你希望禁止显示任何有效内容,可以给他返回500.目前国内很多机房都要求网站主关闭空主机头,防止未备案的域名指向过来造成麻烦. 就可以这样

nginx禁止某个IP或某个IP段访问网站

禁止单个IP的写法:  代码如下 复制代码 deny x.x.x.x; 禁止IP段的写法:  代码如下 复制代码 deny 10.0.0.0/24; 也可以实现只允许某个IP或某个IP段用户访问,其它的用户全都禁止:  代码如下 复制代码 allow x.x.x.x; allow 10.0.0.0/24; deny all; 重新启动nginx即可生效,下面我们具体看实例 首先建立下面的配置文件放在nginx的conf目录下面,命名为blocksip.conf: deny 95.105.25.1

windows服务器禁止ip访问方法介绍

下边是方法 控制面板-管理工具-本地安全策略  或者命令  gpedit.msc 选择创建 IP 安全策略 点选下一步 我们就是要禁止他,不和他说话,那么,取消勾选 直接按完成.那个勾选是默认的 注意右下的"添加向导",如果勾选了,取消他,然后点击"添加" 选中刚刚建立的 禁止ip   点 编辑(@添加ip) 把"添加向导"的勾选取消 , 然后点添加 地址和目标别写反了,把自己给封了 // 然后切换到 "协议" 面板 我这里是

nginx主机禁止未绑定域名的访问

在nginx的配置文件nginx.conf中增加下面一个server段就可以了.  代码如下 复制代码 server {     listen       80  default_server;     server_name  _;     return       404; } 或 server {     listen       80  default_server;     server_name  _;     return       444; } nginx的虚拟主机通过HTTP