nginx staging reescribe http a https con el número de puerto

nginx staging reescribe http a https con el número de puerto

Recibo una solicitud 400 incorrecta.

Este es el código de configuración. archivo: staging.rewrites

if ($scheme = http) {
   return 301 https://$host:[port]$request_uri;
}

¿Alguien sabe si esta es una reescritura válida?

Respuesta1

No sé dónde está su archivo de configuración, aunque prefiero usar las siguientes líneas en su puerto 80 para reescribir las solicitudes al puerto 443:

server {
    listen 80;

    server_name YOURSERVER_DOMAIN;

    access_log /var/log/nginx/access.http.log detailed;
    error_log /var/log/nginx/error.http.log notice;

    location / {
        rewrite ^ https://$host$request_uri? permanent;
    }
}

Saludos

Respuesta2

Esta es la forma preferida de realizar la redirección http -> https en nginx:

server {
    server_name example.com;

    return 301 https://www.example.com$request_uri;
}

información relacionada