Nginx
將 http 子域重定向到 https
我正在嘗試將所有請求從http://blog.example.org>重定向到<https://blog.example.org。
不幸的是,我收到此錯誤:
400 Bad Request The plain HTTP request was sent to HTTPS port
我的配置:
server { listen 80; server_name blog.example.org; return 301 https://$host$request_uri$is_args$args; } server { server_name blog.example.org; listen 443 ssl http2; root /srv/www/wordpress; index index.php index.html index.htm;
您的退貨聲明不正確。你應該有:
return 301 https://$server_name$request_uri;
我不完全確定,但我認為這裡使用
$is_args
and$args
是錯誤的,因為它$request_uri
包含完整的請求字元串(帶參數的完整 URI 路徑)。你試過沒有這些嗎?例如:server { listen 80; server_name blog.example.org; return 301 https://$host$request_uri; }