这个问题在 StackOverflow 上已经被问过很多次了,但我的问题略有不同:
我有多个子域名网站:
如您所见,只有管理员通过 https 提供服务。
我成功地在 Nginx 中创建了所有虚拟主机,并且运行良好。
但是现在,我想将所有尝试通过 https 访问其他子网站的客户端重定向到 http:
- https://www.example.com=> 重定向至http://www.example.com
- https://my.example.com=> 重定向至http://my.example.com
- https://client.example.com=> 重定向至http://client.example.com
=> 只有管理员才会做相反的事情。
我的第一个想法是为每个 https 域设置重定向:
server {
listen 443;
server_name www.example.com;
rewrite ^(.*) http://www.example.com$1;
}
并对每个子域(www、my 和 client)执行此操作。
但这不起作用,我的浏览器出现 SSL 错误(SSL 记录太长)。
我怎样才能做到这一点?
感谢您的帮助!
答案1
您需要在服务器 {}
你至少需要
ssl on;
ssl_certificate /etc/ssl/domain.com.crt;
ssl_certificate_key /etc/ssl/domain.com.key;