{% extends "base.html" %} {% set active_page = "settings_nginx" %} {% set can_edit = current_user.has_permission('settings_nginx.edit') and license_active() %} {% block page_title %}NGINX{% endblock %} {% block page_sub %}
Reverse-Proxy: Domain, Ports, SSL/HSTS und Zertifikat
{% endblock %} {% block content %} {% import "_hint_icon.html" as hi %}

Reverse-Proxy

Domain (server_name), Ports und HTTPS/HSTS für den nginx-Reverse-Proxy vor der App.
{% if pending_nginx_token %}

Neue nginx-Konfiguration wurde angewendet. Wenn diese Seite gerade noch lädt, funktioniert die Verbindung — bitte bestätigen, bevor automatisch zurückgerollt wird (nach {{ nginx_revert_seconds }}s ohne Bestätigung).

{% elif can_edit %}
{% if not cert_info %}
Erst nach Hochladen oder Anfordern eines Zertifikats verfügbar.
{% endif %}
{% else %}

{% if current_user.has_permission('settings_nginx.edit') %} Nur mit Lizenz verfügbar — siehe Lizenz. {% else %} Für Änderungen fehlt das Recht „NGINX ändern“. {% endif %}

{% endif %}

Zertifikat

Hochladen (PEM) oder automatisch per Let's Encrypt anfordern — mit automatischer Verlängerung über certbots eigenen Timer.
{% if cert_info %}
Quelle{{ "Let's Encrypt" if cert_info.source == "letsencrypt" else "Hochgeladen" }}
Subject{{ cert_info.subject }}
Aussteller{{ cert_info.issuer }}
Gültig bis {{ cert_info.not_after.strftime('%d.%m.%Y') }} {% if cert_info.days_left < 0 %} abgelaufen {% elif cert_info.days_left <= 30 %} noch {{ cert_info.days_left }} Tage {% else %} noch {{ cert_info.days_left }} Tage {% endif %}
{% if cert_info.source == "letsencrypt" %}
Automatische Verlängerung {% if certbot_timer and certbot_timer.active %} aktiv {% if certbot_timer.next_run %}nächster Lauf: {{ certbot_timer.next_run }}{% endif %} {% elif certbot_timer %} inaktiv {% else %} unbekannt {% endif %}
{% endif %}
{% if cert_info.source == "letsencrypt" and can_edit %}
{% endif %} {% else %}

Noch kein Zertifikat hinterlegt.

{% endif %} {% if can_edit %}
Setzt voraus, dass die Domain öffentlich auf diesen Host auflöst und Port 80 aus dem Internet erreichbar ist (HTTP-01-Validierung) — für rein interne Instanzen ohne öffentliche Domain nicht nutzbar, dann stattdessen hochladen. Verlängerung läuft danach automatisch über certbots eigenen Timer{% if certbot_timer %} ({{ "aktiv" if certbot_timer.active else "inaktiv!" }}){% endif %}, zweimal täglich.
{% if cert_info and not ssl_enabled %}
{% elif cert_info %}

SSL muss zuerst deaktiviert werden, bevor das Zertifikat entfernt werden kann.

{% endif %} {% else %}

{% if current_user.has_permission('settings_nginx.edit') %} Nur mit Lizenz verfügbar — siehe Lizenz. {% else %} Für Anfordern/Upload/Entfernen fehlt das Recht „NGINX ändern“. {% endif %}

{% endif %}
{% endblock %} {% block scripts %} {% endblock %}