今天刚弄了个相关的VPS,因为是临时使用所以没有对系统进行太多的配置,用了它自带的Apache和PHP。但是在配置Apache的时候使用IP总是可以直接访问到Apache的测试页面。于是屏蔽了默认的DocumentRoot设置,修改了其权限,但是依然可以使用IP访问。后来无意中在/var/www/error目录下面发现了一个noindex.html文件,顾名思义就是如果找不到默认的首页文件的时候使用的文件,于是顺藤摸瓜就在/etc/httpd/conf.d/目录下找到了welcome.conf文件,将其内容全部注释掉,然后重启apache就可以了。
如果不是vps估计就没有welcode.conf文件了,我们可参考下面办法解决
代码如下 | 复制代码 |
|
然后在error目录创建一个出错页面的index.htm页面即可
利用Apache的Rewrite和PHP实现400错误
新建一个虚拟主机配置,将来自IP的访问Rewrite到一个自定义的PHP页面。
代码如下 | 复制代码 |
ServerName XXX.XXX.XXX.XXX |
其中XXX.XXX.XXX.XXX为你的IP地址,网站主目录为/var/www/error/
编辑文件/var/www/error/400.php,内容如下:
代码如下 | 复制代码 |
header(“HTTP/1.1 400 Bad Request”); Bad Request |
这样以来,即可实现直接用IP访问返回400错误了。
修改完成之后,务必要重新加载Apache配置,命令如下:
service httpd reload
另外php5.3之后默认将short_opentag打开了,就是说如果只写 的话会显示源代码,必须写成