2019年3月

Apache禁止非法域名(未绑定域名) 访问服务器

针对Apache2.4.1 以前的版本


NameVirtualHost *:80 # 非常重要的虚拟主机设置,如果忽略此处,则特定主机设置无法生效。

# 直接拒绝所有非法域名
<VirtualHost *:80>
  ServerName *
  ServerAlias *
  <Location />
    Order Allow,Deny
    Deny from all
  </Location>
  ErrorLog "logs/error.log"
  CustomLog "logs/error.log" common
</VirtualHost>

针对Apache2.4.1 以后的版本

http2.4.1 以后不再需要NameVirtualHost以及不再支持ServerName * 这种写法。
使用ServerName 会报Invalid ServerName “” use ServerAlias to set multiple server names。
<VirtualHost *:80>
  ServerName 服务器ip
  ServerAlias *
  <Location />
    Order Allow,Deny
    Deny from all
  </Location>
</VirtualHost>