相关疑难解决方法(0)

nginx 响应未知主机名?

我有两个域指向同一台服务器,一个我们将调用home,另一个我们将调用web

我在端口 80 上为 HTTP 和 443 为 HTTPS 运行 nginx。在我的服务器定义中,我定义了两个服务器:

server {
    listen 80;
    server_name web;
    # ...
}

server {
    listen 443;
    server_name web;
    # ...
}
Run Code Online (Sandbox Code Playgroud)

在实践中,它工作得很好。但是,当我尝试访问home指向与 相同的 IP 地址的 时web,我会得到服务,web而不是得到 404 或类似信息。

如何将 nginx 配置为与服务器名称不匹配的 404 请求?我是否需要定义一个默认服务器,它只会将事情退回到 404 秒?

http nginx https

9
推荐指数
3
解决办法
1万
查看次数

让 Nginx 通过 HTTPS 拒绝未知的服务器名称

我有一个 Nginx 实例,使用 SNI 从单个 IP 为多个 HTTPS 域提供服务。

设置的唯一故障是,每当请求服务器裸 IP 的 URL 或在该 IP 上列出的没有相应 HTTPS 服务器块的域时,Nginx 都会以第一个(作为默认)域进行响应。在这种情况下,我更愿意简单地返回一个标准的 403 Forbidden——我会设置一个默认的服务器块来做到这一点,但我看不到解决客户端证书不匹配警告的方法。

(如何 c|C)我将 Nginx 配置为拒绝对此类未知/未定义域的请求,而无需指定会扰乱浏览器的特定 ssl 证书?(即,我需要 Nginx 在用“坏”证书扰乱客户端之前用 403 拒绝请求 - 从客户端的 POV 这应该与根本没有定义 HTTPS 服务器块的情况相同。)

nginx https sni

7
推荐指数
1
解决办法
3324
查看次数

标签 统计

https ×2

nginx ×2

http ×1

sni ×1