HTTP auf HTTPS umleiten

Seit dem 28. Februar 2017 wird mailcow mit aktivierten Ports 80 und 443 geliefert.

Verwenden Sie die untenstehende Konfiguration nicht für Reverse-Proxy-Setups, bitte lesen Sie dazu unsere Reverse-Proxy-Anleitung, die einen Redirect von HTTP zu HTTPS beinhaltet.

Öffne mailcow.conf und setze HTTP_BIND= - falls nicht bereits gesetzt.

Erstellen Sie eine neue Datei data/conf/nginx/redirect.conf und fügen Sie die folgende Serverkonfiguration in die Datei ein:

server {
  root /web;
  listen 80 default_server;
  listen [::]:80 default_server;
  include /etc/nginx/conf.d/server_name.active;
  if ( $request_uri ~* "%0A|%0D" ) { return 403; }
  location ^~ /.well-known/acme-challenge/ {
    allow all;
    default_type "text/plain";
  }
  location / {
    return 301 https://$host$uri$is_args$args;
  }
}

Falls Sie den Parameter HTTP_BIND geändert haben, erstellen Sie den Container neu:

docker compose up -d
docker compose up -d

Andernfalls starten Sie Nginx neu:

docker compose restart
docker compose restart