其实这个是由于没有绑定的域名解析到服务器后,服务器找不到对应域名的主机头,直接返回了该端口下的第一个网站内容。

由于我们网站比较多,有时候管理员难免会忙不过来出现这种情况,我做了一个专门的错误页面,用于提醒管理员错误原因。

这个错误页面利用了刚刚提到的“直接返回了该端口下的第一个网站内容”这一特征,把一个没有域名的主机绑定80端口,写在其他80端口主机的前面

1
2
3
<VirtualHost *:80>
DocumentRoot /home/pub/err/
</VirtualHost>

如图
VirtualHost

然后在这个错误目录下面新建一个index.html 写上错误提示,如下

源码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="Robots" Content="Noindex">
<title>域名绑定错误</title>
</head>
<body style="background-color: #DCDCDC;">
<center>
<table width="300" border="1">
<caption>
<font color="#FF0000" size="+2">警告:域名绑定错误</font>
</caption>
<tr>
<td>1.&nbsp;</td>
<td>&nbsp;可能是忘记绑定域名</td>
</tr>
<tr>
<td>2.&nbsp;</td>
<td>&nbsp;也有可能是域名拼写错误</td>
</tr>
<tr>
<td>3.&nbsp;</td>
<td>&nbsp;或者是绑定域名后没有重启Apache</td>
</tr>
</table>
</center>
</body>
</html>