背景
当创建好网站后,即便网站绑定了域名,但是用户还是可以通过 IP 访问网站,那么如何禁止呢?
解决方案
进入网站,设置,打开设置页面,在配置文件中添加以下内容
lua
# 拒绝直接通过 IP 访问
if ($host ~* "^\d{1,3}(\.\d{1,3}){3}$") {
return 403;
}
这段代码的作用是检查请求的主机名是否为 IP 地址格式,如果是,则返回 403 错误,禁止访问。
当访问网站时,如果访问的是 IP 地址,则会返回 403 错误,禁止访问,如下截图所示。

扩展
出了IP 直接访问网站外,还有其他可以采纳的安全策略,如:
- 使用 HTTPS,将所有HTTP 请求强制重定向到 HTTPS。
- 增加网关或防火墙,将 IP 隐藏在内部,避免直接暴露,例如,可以使用 CloudFlare 这样的服务,避免直接暴露 IP。