参考资料: http://www.cnblogs.com/zhuangge/archive/2011/04/13/2014892.html

先引用一下上面资料的内容:

用apache搭建的WEB服务器,如何让网友只能通过设定的域名访问,而不能直接通过服务器的IP地址访问呢,通过查找,有两个方法可以实现,都是修改httpd.conf文件来实现的,下面举例说明。

方法一:在httpd.conf文件最后面,加入以下代码


     NameVirtualHost 211.*.*.*


     <VirtualHost 211.*.*.*>
     ServerName 211.*.*.*
     <Location />
        Order Allow,Deny
        Deny from all
     </Location>
     </VirtualHost>    
     <VirtualHost 211.*.*.*>
     DocumentRoot "c:/web"
     ServerName tuan.coo8.com
     </VirtualHost>   
   说明:蓝色部分是实现拒绝直接通过211.*.*.*这个IP的任何访问请求,这时如果你用211.*.*.*访问,会提示拒绝访问。红色部分就是允许通过http://tuan.coo8.com/这个域名访问,主目录指向c:/web(这里假设你的网站的根目录是c:/web)

   方法二:在httpd.conf文件最后面,加入以下代码
     NameVirtualHost 211.*.*.*
     <VirtualHost 211.*.*.*>
     DocumentRoot "c:/test"
     ServerName 211.*.*.*
     </VirtualHost>     
     <VirtualHost 211.*.*.*>
     DocumentRoot "c:/web"
     ServerName http://tuan.coo8.com

     </VirtualHost>    
    
   说明:蓝色部分是把通过211.*.*.*这个IP直接访问的请求指向c:/test目录下,这可以是个空目录,也可以在里面建一个首页文件,如index.hmtl,首面文件内容可以是一个声明,说明不能通过IP直接访问。红色部分的意思跟方法一是一样的。

     

        注意:1. 直接复制粘贴的话可能会带有中文空格,请把这些多余的空格去掉。

       2.  如果使用了负载均衡,限制的IP不要写外网IP,请填写内网IP。

最终事例:

理解意思是先建一个虚拟主机,拒绝所有的IP访问,然后再建一个虚拟主机,只允许指定的域名来访问。

这个是配置文件的路径

/usr/local/*/config/apache/vhosts.conf

原来的配置文件内容为:

# Virtual Hosts

# default host
<VirtualHost *:99>
DocumentRoot "/usr/local/*/data/www"
ServerName mail.domain.com
ErrorLog "logs/mail_error_log"
CustomLog "logs/mail_access_log" common
</VirtualHost>

修改后可以达到目的的配置文件,这个192.168.1.191为服务器的IP地址,生产环境将其修改为服务器需要访问的公网Ip地址,并且其中的路径我将有一个改为*号了,直接复制的也需要改一下。

NameVirtualHost 192.168.1.191
<VirtualHost 192.168.1.191:99>
#DocumentRoot "/usr/local/*/data/www"
ServerName 192.168.1.191
<Location />
Order Allow,Deny
Deny from all
</Location>
ErrorLog "logs/mail_error_log_ip"
CustomLog "logs/mail_access_log_ip" common
</VirtualHost> <VirtualHost 192.168.1.191:99>
DocumentRoot "/usr/local/*/data/www"
ServerName mail.domain.com
ErrorLog "logs/mail_error_log"
CustomLog "logs/mail_access_log" common
</VirtualHost>

最终再重启一下apache的服务,就可以了。

apache禁止IP访问网站的更多相关文章

  1. Nginx如何设置禁止IP访问网站

    需要禁止IP访问网站.在相关的server中设置相关的限制即可.

  2. Apache禁止ip访问

    网站突然让禁止ip访问,于是就通过配置Apache达到了想要的效果. 我们网站用的是Apache+tomcat集群,所以需要配置虚拟主机,虚拟主机我在这里就不说了,不明白的上网搜搜吧,这里只说禁止ip ...

  3. apache配置,禁止ip访问web站点

    由于一台服务器上面部署了好几个应用,对应不同的域名,如果用户知道ip地址的话,直接用户ip地址访问,会显示第一个虚拟主机的页面(更改了虚拟主机的顺序,每次都是显示第一个).这样对用户造成不好的印象,所 ...

  4. 通过ASP禁止指定IP和只允许指定IP访问网站的代码

    过ASP禁止指定IP和只允许指定IP访问网站的代码,需要的朋友可以参考下. 一.禁止指定IP防问网站,并执行相应操作: 代码如下: <% Dim IP,IPString,VisitIP '设置I ...

  5. IIS网站设置禁止IP访问设置方法

    本文设置系统为Windows2003.IIS版本是6.0. 打开IIS管理器,在iis管理器左侧单击打开网站下面的相应需要设置的网站,并在此网站上右键,选择属性,即可打开该网站属性进行相关设置. (i ...

  6. 使用nginx配置域名及禁止直接通过IP访问网站

    前段时间刚搭建好个人网站,一直没有关注一个问题,那就是IP地址也可以访问我的网站,今天就专门研究了一下nginx配置问题,争取把这个问题研究透彻. 1. nginx配置域名及禁止直接通过IP访问 先来 ...

  7. 在虚拟机上的关于Apache(阿帕奇)(3)基于IP访问网站

    这篇随笔是基于IP访问网站,和后面两篇文章基于域名和基于端口一起练习效果更好 基于IP(记得下载httpd服务) 首先使用nmtui命令为网卡添加多个ip地址  输入命令:nmtui  进入下面这个界 ...

  8. Linux 如何设置只允许域名访问站点而禁止IP访问站点

    最近在论坛里看到有人问到 Linux 如何设置只允许域名访问站点而禁止IP访问站点的问题,之前自己也用过这个功能,可以防止别人用 IP 地址来访问到自己的网站,下面我就我自己的环境给出解决方法,我用的 ...

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

    Nginx禁止ip访问可以防止指定IP访问我们的网站,本例子可以实现是防止单IP访问或IP网段访问了,非常的有用我们一起来看看吧. 常用的linux做法 iptables参考规则  代码如下 复制代码 ...

随机推荐

  1. react-native 获取组件的宽度和高度

    react-native 获取组件的尺寸有两种方式,第一种方式使用元素自身的onLayout属性去获取,但是这种方式有一个局限性,就是只有在初次渲染的时候才会触发这个函数,而且此种方法获取的是组件相对 ...

  2. 输入框UITextField禁止输入空格方法

    方法一:添加代理 - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range rep ...

  3. [UE4]瞬移

    1.设置Input,事件名称设置为Teleport 2.设置事件Teleport 3.

  4. 阿里Java开发手册

    1.1 命名风格 (1)常量命名全部大写,单词间用下划线隔开. (2)抽象类命名以Abstract或Base开头:异常类命名以Exception结尾:测试类命名以它要测试的类名开始,以Test结尾. ...

  5. JVM-即时编译JIT

    编译简介 在谈到JIT前,还是需要对编译过程有一些简单的了解. 在编译原理中,把源代码翻译成机器指令,一般要经过以下几个重要步骤: 什么是JIT1.动态编译(dynamic compilation)指 ...

  6. JavaScript 下拉框 左边添加至右边

    关于如何实现右边下拉框中选项的排序一时没有好的解决方法,等想到了回来补充 <!DOCTYPE html> <html> <head> <meta charse ...

  7. 多进程模块 multiprocessing

    由于GIL的存在,python中的多线程其实并不是真正的多线程,如果想要充分地使用多核CPU的资源,在python中大部分情况需要使用多进程. multiprocessing包是Python中的多进程 ...

  8. English-英语日常交流语句

  9. 给tomcat配置外部资源路径(应用场景:web项目访问图片视频等资源)

    对于一个web项目来说,除了文字之外,图片,视频等媒体元素也是其重要的组成部分.我们知道,web项目中如果用到大量的图片.视屏的资源,我们 通常的做法是只在数据库中存储图片.视频等资源的路径,web项 ...

  10. MySql/Oracle树形结构查询

    Oracle树形结构递归查询 在Oracle中,对于树形查询可以使用start with ... connect by select * from treeTable start with id='1 ...