Mir ist klar, dass dies wie ein Duplikat von mindestens ein paar anderen Fragen aussieht, aber ich habe sie jedes Mal mehrmals gelesen und mache immer noch etwas falsch.
Im Folgenden finden Sie den Inhalt meiner myexample.com-Nginx-Konfigurationsdatei in /etc/nginx/sites-available
.
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name myexample.com www.myexample.com;
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains";
ssl_certificate /etc/letsencrypt/live/myexample.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/myexample.com/privkey.pem;
#Configures the publicly served root directory
#Configures the index file to be served
root /var/www/myexample.com;
index index.html index.htm;
}
Es funktioniert, wenn ich zu https://myexample.com gehe, wird der Inhalt bereitgestellt und die Verbindung ist sicher. Diese Konfiguration scheint also gut zu sein.
Wenn ich nun den SSL-Port auf 9443 ändere und die nginx-Konfiguration neu lade, wird die Konfiguration ohne Fehler neu geladen, aber wenn ich https://myexample.com besuche , wird ein Fehler im Browser angezeigt connect. ERR_CONNECTION_REFUSED)
Ich habe hier , hier und hier (unter anderem) Vorschläge und Dokumentation ausprobiert , erhalte jedoch immer den Fehler ERR_CONNECTION_REFUSED.
Ich sollte beachten, dass ich einen nicht standardmäßigen Port verwenden und diesen dann explizit in die URL eingeben kann, z . B. https://myexample.com:9443 . Das will ich aber nicht. Ich möchte, dass ein Benutzer myexample.com in einen beliebigen Browser eingeben und Nginx automatisch zur sicheren Verbindung umleiten kann.
Auch hier habe ich keinerlei Probleme, wenn ich den standardmäßigen 443-SSL-Port verwende.
Edit: Ich benutze Nginx / 1.6.2 unter Debian / Jessie