我有两个域名,myexample.com
并且my-example.com
。我希望任一域名的所有流量都转到https://www.my-example.com,我有该域名的 SSL 证书。我没有域名 myexample.com 的 SSL 证书。
我有http://myexample.com,http://www.myexample.com,http://my-example.com和http://www.my-example.com全部重定向至https://www.my-example.com没问题,但是当我设置重定向时https://myexample.com或者https://www.myexample.com,它会在重定向之前检查他们的 SSL 证书,所以我总是收到证书错误。
有没有办法在不检查 SSL 的情况下对我要重定向的非 SSL 域进行重定向?
我的配置文件的相关部分:
frontend www-https
bind xxx.xxx.xxx.xxx:443 ssl crt /etc/ssl/private/www.my-example.com.pem
reqadd X-Forwarded-Proto:\ https
redirect prefix https://www.my-example.com code 301 if { hdr(host) -i myexample.com }
redirect prefix https://www.my-example.com code 301 if { hdr(host) -i www.myexample.com }
default_backend www-backend
答案1
重定向是在 HTTP 级别完成的,即在建立 SSL 连接之后。由于建立 SSL 连接包括验证证书,因此不可能绕过重定向的证书检查。