• “造血式”援疆助推脱贫攻坚 2018-07-22
  • 沪高端住宅供应遍地开花 单价5万元以上豪宅成交坚挺 2018-07-22
  • 国乒4世界冠军横扫闯入半决赛 日本女双4人全出局 2018-07-22
  • 7天注册138个“姆巴佩”商标,抢注商标背后的大生意 2018-07-21
  • 牡丹江市人大常委会任免职名单 2018-07-21
  • “会写诗的高数老师”让高数课不“高冷” 2018-07-21
  • 紫光阁中共中央国家机关工作委员会 2018-07-21
  • 6月银行结售汇连续三个月顺差 规模环比收窄 2018-07-20
  • 特写:克罗地亚国家男足凯旋记 2018-07-20
  • 做人工智能领域的引领者 2018-07-20
  • 可怕的有机汞 两滴就毁了一位科学家 2018-07-20
  • 西部网(陕西新闻网)www.cnwest.com 2018-07-19
  • “有钱无处花”将成过去式 2018-07-19
  • 紫光阁网移动学习平台 2018-07-18
  • 上海“普陀育菁计划”邀两岸青年结伴实践 2018-07-18
  • 顺时SEO
    顺时网络 SEO服务公司,公司使命助力中小企业在各大搜索引擎实现SEO营销!
    当前位置: 万宁SEO > SEO技术 >

    [nginx反向代理服务器]Nginx 禁止IP访问 只允许域名访问

    时间:2018-06-13 21:12来源:nginx反向代理服务器 作者:nginx反向代理服务 点击:次
    [nginx反向代理服务器]Nginx 禁止IP访问 只允许域名访问

    万宁SEO hnwn.0735seo.cn  [nginx反向代理服务器]Nginx 禁止IP访问 只允许域名访问

    nginx反向代理服务器

      今天要在Nginx上设置禁止通过IP访问服务器,只能通过域名访问,这样做是为了避免别人把未备案的域名解析到自己的服务器IP而导致服务器被断网,从网络上搜到以下解决方案:

      Nginx的默认虚拟主机在用户通过IP访问,或者通过未设置的域名访问(比如有人把他自己的域名指向了你的ip)的时候生效

      最关键的一点是,在server的设置里面添加这一行:

      listen 80 default;

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

      这个设置非常有用。

      比如别人通过ip或者未知域名访问你的网站的时候,你希望禁止显示任何有效内容,可以给他返回500.

      目前国内很多机房都要求网站主关闭空主机头,防止未备案的域名指向过来造成麻烦。就可以这样设置:

      server {

      listen 80 default;

      return 500;

      }

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

      server {

      listen 80 default;

      rewrite ^(.*) http://www.exchangecn.com permanent;

      }

      ==============================

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

      设置如下:

      server

      {

      listen 80;

      server_name www. exchangecn .com exchangecn .com

      没更改之前,通过server_name 中的www. exchangecn .com exchangecn .com均可访问服务器,加入禁止IP访问的设置后,通过exchangecn .com无法访问服务器了,www. exchangecn .com可以访问

      用 nginx -t 检测配置文件会提示warning:

      [warn]: conflicting server name “ exchangecn .com” on 0.0.0.0:80, ignored

      the configuration file /usr/local/webserverinx/confinx.conf syntax is ok

      configuration file /usr/local/webserverinx/confinx.conf test is successful

      最后通过在listen 80 default;后再加server_name _;解决,形式如下:

      #禁止IP访问

      server

      {

      listen 80 default;

      server_name _;

      return 500;

      }

      或者

      server {

      listen 80 dufault;

      server_name _;

      rewrite ^(.*) http://www. exchangecn .net permanent;

      }

      这样,通过 exchangecn .com就能访问服务器了,问题解决了,但具体原因还是不清楚。

      分类:Nginx 成功分享标签:301, ipNginx 设置301重定向2010年3月2日iNginx没有评论

      第一种情况:访问A站定向到B站

      server {

      server_name www. exchangecn .net ;

      rewrite ^(.*) http://www. exchangecn .com$1 permanent;

      }

      第二种情况:不是访问A站的全部重定向到指定页面

      server {

      server_name www. exchangecn .net;

      if ($host != ‘ exchangecn .net’ ) {

      rewrite ^/(.*)$ http://www. exchangecn .com/$1 permanent;

      }

      }

      如果写在第一个server段

      使用IP访问时也将被重定向

    文章标题:[nginx反向代理服务器]Nginx 禁止IP访问 只允许域名访问

    本文地址:http://hnwn.0735seo.cn/gjcyh/4168.html

    扫一扫关注顺时网络公众号

    扫一扫关注顺时网络公众号

    责任编辑:nginx反向代理服务

    顶一下
    (0)
    0%
    踩一下
    (0)
    0%
    ------分隔线----------------------------
    猜你喜欢的内容

    客户QQ服务热线:

    QQ:1251192082

    QQ:2922517368

    QQ:40467028

    在线客服