apache如何禁止使用IP访问

时间:2021-05-25

用apache搭建的WEB服务器,如何让网友只能通过设定的域名访问,而不能直接通过服务器的IP地址访问呢,有两个方法可以实现(仅限于我知道的,当然肯定还会有其他方法可以实现),都是修改httpd.conf文件来实现的,下面举例说明。

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

     NameVirtualHost 221.*.*.*
     <VirtualHost 221.*.*.*>
     ServerName 221.*.*.*
     <Location />
     Order Allow,Deny
    Deny from all
     </Location>
     </VirtualHost>    
     <VirtualHost 221.*.*.*>
     DocumentRoot "c:/web"
     ServerName
     </VirtualHost>

   说明:蓝色部分是实现拒绝直接通过221.*.*.*这个IP的任何访问请求,这时如果你用221.*.*.*访问,会提示拒绝访问。红色部分就是允许通过这个域名访问,主目录指向c:/web(这里假设你的网站的根目录是c:/web)

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

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

注:修改后要重启apache

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章