防止SSL证书泄漏服务器IP
在Nginx中,访问https://ip 时,服务器会返回第一个已经配置了域名的站点。这会造成源站IP泄露。
以Nginx 1.19.4以上的版本中,使用以下配置,直接访问IP或者不存在的server_name,服务器会返回错误信息SSL_ERROR_UNRECOGNIZED_NAME_ALERT
,而不是返回配置文件中第一个https网站。
server {
listen 443 ssl default_server;
ssl_reject_handshake on;
}
server {
listen 443 ssl;
server_name example.com;
ssl_certificate example.com.crt;
ssl_certificate_key example.com.key;
}
Nginx 直接返回字符串、状态码
server{
listen 80 ssl;
server_name _;
# 可以直接返回一个状态码:400 403 401 500
return 500;
# 也可以返回一个字符串
default_type text/html;
return 200 'Nothing to see here.';
# 当然,也可以指定一个目录
root /home/wwwroot/default;
}
参考链接:
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。