当前位置:首页 > PHP教程 > Apach > 列表

Apache禁止ip访问及去除默认的测试页面

发布:smiling 来源: PHP粉丝网  添加日期:2014-09-20 16:11:56 浏览: 评论:0 

ip访问方法在以前经常会碰到现在IDC商都有白名单了,只要你的机器加入了防火墙白名单就就不存在这个问题了,下面我们一起来看看.

今天刚弄了个相关的VPS,因为是临时使用所以没有对系统进行太多的配置,用了它自带的Apache和PHP,但是在配置Apache的时候使用IP总是可以直接访问到Apache的测试页面。于是屏蔽了默认的DocumentRoot设置,修改了其权限,但是依然可以使用IP访问.

后来无意中在/var/www/error目录下面发现了一个noindex.html文件,顾名思义就是如果找不到默认的首页文件的时候使用的文件,于是顺藤摸瓜就在/etc/httpd/conf.d/目录下找到了welcome.conf文件,将其内容全部注释掉,然后重启apache就可以了.

如果不是vps估计就没有welcode.conf文件了,我们可参考下面办法解决,代码如下:

  1. <VirtualHost *:80> 
  2.     ServerAdmin webmaster@dummy-host.huyinglong.com 
  3.     DocumentRoot "e:/www.phpfensi.com/" 
  4.     ServerName 你的IP地址 
  5. </VirtualHost> 

然后在error目录创建一个出错页面的index.htm页面即可,利用Apache的Rewrite和PHP实现400错误,新建一个虚拟主机配置,将来自IP的访问Rewrite到一个自定义的PHP页面,代码如下:

  1. ServerName  XXX.XXX.XXX.XXX 
  2. DocumentRoot /var/www/error/ 
  3. RewriteEngine On 
  4. RewriteRule  ^.*  /400.php 

其中XXX.XXX.XXX.XXX为你的IP地址,网站主目录为/var/www/error/,编辑文件/var/www/error/400.php,内容如下:

  1. <?php 
  2. header(“HTTP/1.1 400 Bad Request”);   
  3. ?> 
  4. <h1>Bad Request</h1> 

这样以来,即可实现直接用IP访问返回400错误了,修改完成之后,务必要重新加载Apache配置,命令如下:

service httpd reload

另外php5.3之后默认将short_opentag打开了,就是说如果只写 <? 的话会显示源代码,必须写成 <?php ,如果想使用旧的需要在php.ini文件中修改设置 short_opentag=On.

Tags: Apache禁止ip Apache测试页面

分享到: