0

xiuno禁止ip 访问,只允许域名访问

xinyu
2025-01-05 79

前言

今天登录百度统计时候发现有一些请求是用ip访问的,不用说了,这些肯定是恶意请求,也怪自己当初没注意配置禁止IP方式访问。

上网搜了一下,发现还真有必要禁止IP访问,因为这样做可以避免别人把未备案的域名解析到自己的服务器IP而导致服务器被断网,现在居心叵测的人实在太多了,天天扫描小服务器,实在受不了。

几种方法

总结如下,亲测可用。如果您对返回码不太了解的话可以baiduHTTP返回码大全。
所有常见不常见的http返回码大全

方法一:直接40X

判断host是否是www.happyhong.cn,不是的话直接403

server{
    listen 80;
    server_name www.happyhong.cn ;
   #server_name localhost;
   if ($host != 'www.happyhong.cn'){
        return 403;
        }
Markup

直接无法访问,显示403,非常OK。

方法二:给我跳回来

这个方法无非就是当使用IP访问时,还是跳回自己的域名,还能作为影(引)流之主,具体形式如下。

server{
    listen 80;
    server_name www.happyhong.cn ;
    }
 .....
 .....
server {
listen 80 default_server;
server_name _;
rewrite ^(.*) http://www.happyhong.cn permanent;
}
Markup

可以从上图看到直接IP访问时先301再跳转到www.happyhong.cn

方法三:直接返回值

当IP访问时直接返回500,也不用判断host。(可把400改成404或502等错误码)

 

server
{
	listen 80 default_server;
	server_name _;
	return 500;
}
Markup

也可以是这样,注意观察与上面有何不同哦。

server {
    listen 80 default;
    server_name "";
    return  500;
}
Markup

在这里,我们设置的主机名为字符串以匹配未定义的“host”头的请求,并且返回了一个nginx特有的,并且返回500,nginx从0.8版本之后,这已成为主机名默认的设置,所以可以省略“sever_name”,可简化为下面形式。

 

server {
    listen   80;
    return   500;
}
Markup

 

本站申明 1、本论坛一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请投诉举报
2、本论坛的资源部分来源于网络,如有侵权,请 私信联系站长进行删除处理。
3、不得发布和链接任何有关政治, 色情, 宗教, 迷信.低俗、变态、血腥、暴力以及危害国家安全.诋毁政府形象等违法言论和信息的帖子.
4、本帖图片及内容纯属发布用户个人意见,与本站无关!
4,本帖如为原创资源/教程分享帖,则本站与发布用户共同享有内容版权!
6,本站管理有权在不经发布者同意的情况下,根据版规及相关法律法规删除/修改本帖!
7,如无特别说明,任何个人或者组织不得转载本帖内容!任何个人或团体不得将本站资源用于非法用途!
8,未尽事宜最终解释权归本站(小白网)所有!

最新回复 (0)

    暂无评论

    • Xiuno论坛
      2
返回
来发布一条评论吧~点击关闭评论框