apache(包含虚拟主机)禁止使用IP访问的实现方法

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

[@more@]

用apache搭建的WEB服务器,如何让大家只能通过设定的域名访问,而不能直接通过服务器的IP地址访问呢,有两个方法可以实现,都是修改httpd.conf文件来实现的,如果是虚拟主机的话,则是修改httpd_vhosts.conf来实现(仅限于我知道的,当然肯定还会有其他方法可以实现),下面举例说明。
  方法一:在httpd.conf文件最后面,加入以下代码
NameVirtualHost 61.*.*.*

ServerName 61.*.*.*

Order Allow,Deny
Deny from all

 

DocumentRoot "/usr/local/apache/htdocs/web1"
ServerName www.***.com
     
说明:蓝色部分是实现拒绝直接通过61.*.*.*这个IP的任何访问请求,这时如果你用61.*.*.*访问,会提示拒绝访问。红色部分就是允许通过www.***.com这个域名访问,主目录指向c:/web(这里假设你的网站的根目录是/usr/local/apache3/htdocs/web1)
方法二:在httpd.conf文件最后面,加入以下代码
NameVirtualHost 61.*.*.*
DocumentRoot "/usr/local/apache3/htdocs/error"
ServerName 61.*.*.*

DocumentRoot "/usr/local/apache/htdocs/web1"
ServerName www.***.com
     

说明:蓝色部分是把通过61.*.*.*这个IP直接访问的请求指向/usr/local/apache3/htdocs/error目录下,这是个提示目录,提醒使用域名访问,IP不可以访问。红色部分的意思跟方法一是一样的。
注:修改后要重启apache
如果使用虚拟主机的话,apache虚拟主机默认情况下ip地址方式访问(http://xxx.xxx.xxx.xxx) 对应第一个虚拟主机,所以我们可以先建一个指向错误页面的虚拟主机,达到禁止用ip访问网页的目的。也就是说用 IP 访问到的是第一个虚拟主机,所以只要不是第一个虚拟主机,用 IP 就访问不到。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22383252/viewspace-1028400/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/22383252/viewspace-1028400/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值