在 nginx 中,如何将 https://app 与 http://www 分离并重定向

在 nginx 中,如何将 https://app 与 http://www 分离并重定向

我的系统有一个安全区域https://app.domainname.org并且http://www.domainname.org。我见过许多帖子提到类似但略有不同的问题/配置。

如何使用 nginx 确保对正确的 url 但错误协议的请求能够自动修复?

例如:

  1. 请求http://app.domainname.org/file.html透明地重定向到https://app.domainname.org/file.html

  2. 请求https://www.domainname.org/file.html透明地重定向到http://www.domainname.org/file.html

答案1

server {
  listen 80;

  server_name app.domianname.org;

  rewrite ^(.*) https://$server_name$1 permanent;
}

server {
  listen 443;

  ssl on;
  ssl_certificate /path/to/crt;
  ssl_certificate_key /path/to/key;

  server_name www.domianname.org;

  rewrite ^(.*) http://$server_name$1 permanent;
}

相关内容