当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > apache如何禁止使用IP访问

Unix/Linux
libtcl8.3下载|无法找到libtcl8.3
libmysqlclient.so.10无法找到
Linux+Apache+PHP+MySQL+Zend Optimizer+PHPMyAdmin
glibc安装错误|glibc安装出错
Zlib是什么?|Zlib的作用是什么?|Zlib有什么作用?
什么是glibc?glibc是什么?什么是freetype?freetype是什么?什么是?Xlib是什么?什么是lo
ERROR 1045 (28000): Access denied for user root@localhost (using password: NO)
mysqld是什么意思?如何卸载mysqld?
linux 卸载 mysql
rpm 命令|rpm 安装|rpm 卸载|rpm 使用|rpm 删除
linux下tar命令rpm命令参数列表
linux rpm卸载参数
ERROR 1045: Access denied for user: root@localhost (Using password: NO)
您的服务器不支持mysql数据库
服务器不支持mysql数据库
mysql 如何添加/创建用户
/usr/bin/install: 无法创建一般文件‘/usr/local/man/man1/cjpeg.1’: 没有那个文件
png.h:329:18: zlib.h: 没有那个文件或目录
您的服务器不支持MySql数据库,无法安装论坛程序
phpMyAdmin

Unix/Linux 中的 apache如何禁止使用IP访问


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-15   浏览: 62 ::
收藏到网摘: n/a

用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 www.ruanchen.com
     </VirtualHost>

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

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

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

         注:修改后要重启apache