侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

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

linux  /  管理员 发布于 5年前   88

我们就先看看Nginx的默认虚拟主机在用户通过IP访问,或者通过未设置的域名访问(比如有人把他自己的域名指向了你的ip)的时候生效最关键的一点是,在server的设置里面添加这一行:

 listen 80 default; 

后面的default参数表示这个是默认虚拟主机。

Nginx 禁止IP访问这个设置非常有用。

比如别人通过ip或者未知域名访问你的网站的时候,你希望禁止显示任何有效内容,可以给他返回500.目前国内很多机房都要求网站主关闭空主机头,防止未备案的域名指向过来造成麻烦。

就可以这样设置:

 server {   listen 80 default;   return 500;  } 

也可以把这些流量收集起来,导入到自己的网站,只要做以下跳转设置就可以:

 server {   listen 80 default;   rewrite ^(.*) http://www.mydomain.com permanent;  } 

按照如上设置后,确实不能通过IP访问服务器了,但是在应该用中出现当server_name后跟多个域名时,其中一个域名怎么都无法访问

设置如下:

 server {   listen 80;   server_name www.abc.com abc.com  }

没更改之前,通过server_name 中的www.abc.com abc.com均可访问服务器,加入Nginx 禁止IP访问的设置后,通过abc.com无法访问服务器了,www.abc.com可以访问,用 Nginx -t 检测配置文件会提示warning:

 [warn]: conflicting server name “abc.com” on 0.0.0.0:80,  ignored  the configuration file /usr/local/webserver/Nginx/conf/  Nginx.conf syntax is ok  configuration file /usr/local/webserver/Nginx/conf/Nginx.  conf test is successful

最后通过在listen 80 default;后再加server_name _;解决

形式如下:

 #禁止IP访问  server {   listen 80 default;   server_name _;   server_name www.abc.com abc.com   return 500;  } 

这样,通过abc.com就能访问服务器了。

总结

好了,以上就是CentOS下Nginx禁止IP访问的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。


  • 上一条:
    值得收藏的20个Linux服务器性能优化技巧
    下一条:
    CentOS系统中一键安装Openstack图文教程
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • Linux中grep命令中的10种高级用法浅析(0个评论)
    • 掌握Linux的xargs命令,效率提升10倍(0个评论)
    • 在Linux系统中如何判断Crontab(定时任务)是否正常执行(1个评论)
    • nginx + keepalived实现高可用示例流程步骤(0个评论)
    • ubuntu 22.04系统中报错:Python 3.6 is no longer supported by the Python core team...解决方式(1个评论)
    • 近期文章
    • 在laravel10+框架中使用vant4实现多个单页面路由(0个评论)
    • 在laravel10+框架中使用vant4库流程步骤(0个评论)
    • 在ubuntu系统中实现mysql数据存储目录迁移流程步骤(0个评论)
    • 在mysql中使用存储过程批量新增测试数据流程步骤(0个评论)
    • docker + gitea搭建一个git服务器流程步骤(0个评论)
    • Laravel 10.34版本发布(0个评论)
    • PHP8中的JIT编译器可以将代码性能提高20%以上(0个评论)
    • 在php语言中实现网站ssl证书过期时间检查功能示例代码(0个评论)
    • 在php语言中实现谷歌登陆功能:google授权api示例代码(0个评论)
    • 在php语言中实现文件加密功能示例(0个评论)
    • 近期评论
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 路人 在

      php中使用hyperf框架调用讯飞星火大模型实现国内版chatgpt功能示例中评论 教程很详细,如果加个前端chatgpt对话页面就完美了..
    • 博主 在

      科学上网翻墙之v2rayN-Core客户端免费公益节点使用教程中评论 @ mashrdn 多切换几个节点测试,免费ssr是没那么稳..
    • mashrdn 在

      科学上网翻墙之v2rayN-Core客户端免费公益节点使用教程中评论 V2rayn免费节点添加上去了,youtobe无法打开网页,是怎么回事..
    • 2016-11
    • 2017-07
    • 2017-10
    • 2017-11
    • 2018-01
    • 2018-02
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2021-02
    • 2021-03
    • 2021-04
    • 2021-06
    • 2021-07
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-11
    • 2021-12
    • 2022-01
    • 2022-03
    • 2022-04
    • 2022-08
    • 2022-11
    • 2022-12
    • 2023-01
    • 2023-02
    • 2023-03
    • 2023-06
    • 2023-07
    • 2023-10
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客