我正在尝试根据http / https将domain1.com重定向到domain2.com。
我当前的Nginx vhost文件设置为:
server {
listen 80;
listen 443 ssl;
ssl_certificate /etc/nginx/xxx.crt;
ssl_certificate_key /etc/nginx/xxx.key;
server_name *.domain1.com;
if ( $scheme = "https" ) {
rewrite ^ https://domain2.com$request_uri? permanent;
}
rewrite ^ http://domain2.com$request_uri? permanent;
}
然而访问https://domain1.com只是转到http://domain2.com。我似乎无法检测到https。我究竟做错了什么?谢谢。
修改 我已经将我的vhost编辑到下面,但同样的问题出现了。:
server {
listen 80;
listen 443 ssl;
ssl_certificate /etc/nginx/xxx.crt;
ssl_certificate_key /etc/nginx/xxx.key;
server_name *.domain1.com domain1.com;
return 301 $scheme://domain2.com$request_uri;
}
答案 0 :(得分:2)
无需使用if
和rewrite
return 301 $scheme://domain2.com$request_uri;