[求助] apache 如何设置禁止IP直接访问



QUOTE:
原帖由 59413 于 2005-12-6 13:16 发表
那怎么才能实现哦
现在我的论坛用IP也能访问 总觉得不爽
我想让大家都用域名访问

IP只能禁止,没有办法不让访问。
除非你这个IP不提供服务,那么你指向这个IP的服务也没有了。
原来是这样
RedirectMatch permanent ^/$ http://127.0.0.1


QUOTE:
原帖由 海鹰 于 2005-12-6 19:46 发表
RedirectMatch permanent ^/$ http://127.0.0.1

这个也不是直接的,telnet 80也可以知道.

楼主需要的是这个ip的80完全没有服务,基本不现实.

不过防火墙有可能做到.
<VirtualHost 192.168.0.1>
ServerName IPAddress  (比如192.168.0.1)
DocumentRoot /usr/local/apache/nosite/
<Directory />
Order deny,allow
Deny from all
</Directory>
</VirtualHost>
先给 Apache 建立一个默认的虚拟主机 (第一个虚拟host就是了)
然后再在底下增加你要加的其他的用域名访问的站点

由于第一个虚拟主机是默认的,所以你用不存在的域名,以及IP地址访问站点,就会访问这个虚拟主机了,你再在这个主机里放一些提示信息就可以了

如果他用合法的域名访问,就可以访问底下的其他的虚拟主机了.
如果你已經明確要屏蔽的ip 或者根本不想讓人訪問
可以配置一下apache
如果不會就乾脆用防火墻屏蔽他
用iptables
不明白就加我
想用户只能用域名访问,不能用地址访问,应如何设置?
不是有人指點了嗎?請用虛擬主機處理掉,這是最單純方式。

[Copy to clipboard] [ - ]
CODE:
NameVirtualHost *:80

<VirtualHost *:80>
ServerName *
<Location />
    Order Allow,Deny
    Deny from all
</Location>
</VirtualHost>

<VirtualHost *:80>
ServerName www.abc.com.cn
DocumentRoot /path
....
</VirtualHost>

楼上的做法我试过了不行,我的机器是端口映射的...