Wie kann ich meine benutzerdefinierte Domain auf eine Google Cloud-Instanz verweisen?

Wie kann ich meine benutzerdefinierte Domain auf eine Google Cloud-Instanz verweisen?

Also habe ich eine Domain, suputamadre.es

Ich habe eine Google Cloud-Instanz gestartet und ihr eine IP zugewiesen, beispielsweise 1.2.3.4

Ich habe meinen Django-Server gestartet, um auf 0.0.0.0:80 zu lauschen

Ich versuche eine Verbindung herzustellen, indem ich auf Chrome gehe, umhttp://1.2.3.4oderhttp://1.2.3.4:80und es funktioniert. Super.

Meine Domäne auf Google Cloud DNS einrichten (Domäne bei GoDaddy gekauft, daher die Nameserver auf Google Cloud gerichtet)

Richten Sie einen A-Eintrag suputamadre.es ein, der auf 1.2.3.4 verweist

Wenn Sie zu cmd gehen und einen Ping an suputamadre.es ausführen, wird 1.2.3.4 zurückgegeben.

Wenn ich in einen Browser gehe und suputamadre.es schreibe, wird die Fehlermeldung „Verbindung verweigert“ angezeigt, suputamadre.es:80 funktioniert jedoch. Warum ist das so? Wie kann ich diese Domain einfach auf meinen Server verweisen? Habe es mit einem CNAME versucht, hat auch nicht funktioniert ...

Wenn wir schon beim Thema sind: Gibt es eine Möglichkeit, es sowohl auf :80 als auch auf :443 zu verweisen, um SSL zu unterstützen, ohne zwei Server gleichzeitig laufen zu lassen? Oder die Domäne sogar auf 1.2.3.4:8000 zu verweisen, ohne eine Umleitung verwenden zu müssen, da SRV in Browsern nicht funktioniert?

Vielen Dank. Ich hänge jetzt schon seit zwei Tagen daran fest, und was auch immer ich zu googeln versuche, scheint bei mir nicht zu funktionieren. Ganz zu schweigen davon, dass Google denkt, wenn ich etwas über „DNS A-Register“ google, ich rede vonAregistrieren...

Antwort1

Es scheint, als wäre Ihr Problem teilweise gelöst. Wenn ichhttp://suputamadre.esIn meinem Browser kann ich Ihre Seite „Django-Setup abgeschlossen“ sehen, es scheint also zu funktionieren.

In Bezug auf die Frage :80 vs :443 SSL wird dies normalerweise mit einer Umleitung auf Port 80 erreicht. IE: Ein Benutzer gibt einhttp://suputamadre.esdie von Ihrem Webserver auf Port 80 empfangen wird und dann sendet der Webserver eine Umleitung zurück zu httpS://suputamadre.es (wird standardmäßig auf Port 443 bereitgestellt, den der Browser verwendet, ohne dass er angegeben werden muss). Auf diese Weise wird der gesamte Datenverkehr über http bereitgestellt.Sauf Port 443. Alles an Port 80 wird auf Port 443 umgeleitet.

Antwort2

Wie DrewZa bereits angedeutet hat, können Sie für diese Zwecke nginx verwenden. Es ist ein netter, leichter Webserver. Schauen Sie hier:

Installieren von NGINX Plus auf der Google Cloud Platform

Zur Portweiterleitung von 80 auf 443:

Erstellen Sie einen Servereintrag in Ihrer Datei nginx.conf. Dann können Sie Folgendes tun:

server {
    listen       80;
    server_name  suputamadre.es;

    proxy_set_header X-Real-IP $remote_addr;

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

Dadurch werden alle Anfragen von 80 auf 443 umgeleitet.

verwandte Informationen