如果将 http 重定向到 https nginx,我们是否需要在第二个服务器块中使用 server_name
Do we need to use server_name in a 2nd server block if redirecting http to https nginx
如果我将所有 http 流量重定向到 https,我们是否应该在 443 块上使用 server_name
:
server {
listen 80;
listen [::]:80;
server_name domain.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name domain.com; #do we need this?
ssl_certificate /etc/letsencrypt/live/domain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/domain.com/privkey.pem;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
我可以省略在 443 端口下的第二个服务器块中写入 server_name
吗?
是的,您需要这个,因为您可以拥有(或稍后添加)另一个侦听 443 的服务器块。然后您需要告诉 nginx 哪个服务器块应该为哪个域的请求提供服务。
如果我将所有 http 流量重定向到 https,我们是否应该在 443 块上使用 server_name
:
server {
listen 80;
listen [::]:80;
server_name domain.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name domain.com; #do we need this?
ssl_certificate /etc/letsencrypt/live/domain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/domain.com/privkey.pem;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
我可以省略在 443 端口下的第二个服务器块中写入 server_name
吗?
是的,您需要这个,因为您可以拥有(或稍后添加)另一个侦听 443 的服务器块。然后您需要告诉 nginx 哪个服务器块应该为哪个域的请求提供服务。