Heroku und GoDaddy einrichten? [geschlossen]

108

Ich versuche, einen Domainnamen zu erhalten, den ich über GoDaddy gekauft habe, um mit meiner von Heroku gehosteten Site zu arbeiten.

Wie konfiguriere ich meinen Domainnamen für die Arbeit mit Heroku?

Allegutta
quelle
21
Ich stimme nicht zu, dass die Frage zu weit gefasst ist. Ich finde es ziemlich spezifisch. Richten Sie mit heroku eine Ruby on Rails-App ein und erstellen Sie eine GoDaddy-Domain, die darauf verweist. Ich hatte genau das gleiche Problem und die Antwort hier gab mir die Lösung, die ich suchte.
Hector Ordonez

Antworten:

300

[Aktualisiert am 31.10.2014] Alles klar! Es klappt! Hier ist, wie ich es von Grund auf neu gemacht habe, damit andere mit dem gleichen Problem es auch beheben können. Zuerst werde ich erklären, wie Heroku und GoDaddy eingerichtet werden, dann werde ich erklären, wie man eine nackte Domain erstellt (www.example.com -> example.com).

Richten Sie Heroku und GoDaddy ein:

  1. Schreiben Sie in Ihren Projektordner im Terminal (auf Ihrem Computer) heroku domains:add www.example.com(wo www.example.comist die Domain, die Sie bei GoDaddy gekauft haben)?

  2. Melden Sie sich bei GoDaddy an -> DOMAINS -> wählen Sie Ihre Domain -> Starten (hiermit gelangen Sie zu den Domain-Details)

  3. Klicken Sie auf die Registerkarte "DNS-Zonendatei"

  4. Entfernen Sie den CNAME-Datensatz mit dem Namen 'www' (der auf @ zeigt).

  5. Klicken Sie auf "Datensatz hinzufügen" -> CNAME (Alias) -> "Host" sollte sein wwwund "Punkte auf" sollte Ihre Heroku-Adresse sein (Beispiel supermoo-bil-3411.herokuapp.com). TTL kann 1 Stunde betragen.

Es kann einige Zeit dauern, bis sich der DNS verbreitet hat. Für mich hat es ungefähr 10 Minuten gedauert.

Das ist es! supermoo-bil-3411.herokuapp.comwird jetzt unter sein www.example.com:)

Erstellen Sie eine nackte Domain:

Eine nackte Domain macht es unnötig, www vor Ihren Domainnamen zu schreiben. Dies kann durch Weiterleiten example.coman erfolgen www.example.com. Das ist super einfach für GoDaddy:

  1. Klicken Sie im selben Fenster wie oben auf die Registerkarte "Einstellungen"

  2. Klicken Sie unter Weiterleitung -> Domäne -> auf "Verwalten" -> dann auf "Weiterleitung hinzufügen".

  3. "Weiterleiten an" sollte www.example.com(Ihre Domain) sein, "Weiterleitungstyp" sollte "301 (permanent)" sein, "Weiterleitungseinstellungen" sollten "Nur weiterleiten" sein.

  4. Stellen Sie sicher, dass "Meine Nameserver und DNS-Einstellungen aktualisieren, um diese Änderung zu unterstützen. (Empfohlen)" aktiviert ist

    Das ist es! Du bist fertig :)

Nützliche Links:

Danke an Ryan Kazinec für die Hilfe :)

Allegutta
quelle
Wenn ich versuche, die Domain hinzuzufügen (Heroku-Domains: www.example.com hinzufügen), wird Folgendes angezeigt: Kein Konto angegeben. Führen Sie diesen Befehl mit --account <Kontoname> aus. Wissen Sie, was dieses Konto ist?
Misschoksondik
Was soll der cname-Datensatz werden, wenn Sie ein SSL-Zertifikat über Herokus-Addons installieren?
Chris Hawkins
2
Ich denke, es ist wichtig zu beachten, dass Sie, wenn Sie ALLE Datensätze entfernen, wie Sie in Schritt 4 vorschlagen, wenn Sie E-Mails, Google Apps oder andere Dienste eingerichtet haben, die Dinge wirklich durcheinander bringen können. Die einzigen Datensätze, die bearbeitet werden müssen, damit dies funktioniert, sind der A-Datensatz und die CNAME-Datensätze für www und alle enthaltenen Subdomains.
Biggles
@allegutta haben Sie SSL auf Ihrer Site implementiert? Wenn ja, verweist der Alias ​​nur auf die Herokussl-URL?
Moosa
1
Es ist nur CNAME nicht CNAME (Alias)
Jack Blank
1

DNS-Einstellungen haben in der Regel eine Verzögerungszeit.

Haben Sie versucht, von einem anderen Gerät aus auf die App zuzugreifen? (Sagen wir, ein Smartphone, das in einem anderen Netzwerk betrieben wird?) Ich habe mehrmals gesehen, dass mein lokaler DNS-Cache Probleme verursacht hat, weshalb der Zugriff von einem anderen Gerät aus möglicherweise etwas Licht in Ihre Situation bringt.

Wenn Sie die DNS-Änderungen von einem Windows-basierten PC aus vornehmen, können Sie Ihren DNS-Cache leeren, wodurch Ihr Problem manchmal behoben werden kann.

1.) Klicken Sie mit der rechten Maustaste auf CMD.exe (auch als Eingabeaufforderung bezeichnet). 2.) Klicken Sie auf Als Administrator ausführen. 3.) Geben Sie Folgendes ein: ipconfig / flushdns 4.) Drücken Sie die Eingabetaste

Bedenken Sie jedoch, dass die Verbreitung von DNS-Änderungen eine Weile dauern kann.

Ryan Kazinec
quelle
Hallo, es ist drei Tage her, seit ich das DNS-Setup durchgeführt habe, und ich habe versucht, die Site auf verschiedene Geräte und Maschinen zu laden. Wie lange dauert es normalerweise?
Allegutta
1
In Ihrem DNS-Eintrag befindet sich ein Feld namens TTL. Dies teilt anderen DNS-Servern mit, wie lange (in Sekunden) ein DNS-Eintrag zwischengespeichert werden soll. Stellen Sie diesen Wert während des Testens auf einen niedrigen Wert ein und drehen Sie ihn dann auf, sobald Sie Ihr DNS herausgefunden haben. Einige DNS-Server überschreiben möglicherweise die TTL mit ihrem eigenen Wert. Seien Sie also vorsichtig, aber ich denke, im schlimmsten Fall sind dies normalerweise ein paar Stunden.
Adam Fabicki
Normalerweise höchstens ein paar Stunden, aber ich habe Warnungen gesehen, dass die Verbreitung bis zu 24 Stunden dauern kann. Trotzdem sollten drei Tage genug Zeit sein.
Ryan Kazinec
Hier ist ein detaillierteres Tutorial im Vergleich zu dem, das Sie in Ihrer Frage erwähnt haben: devcenter.heroku.com/articles/custom-domains
Ryan Kazinec
1
Danke für den Link Ryan, es hat mir wirklich geholfen, das zu lösen!
Allegutta
0

Gehen Sie zu https://dnsimple.com/r/ecc41c23013629 und eröffnen Sie ein Konto.

Sie haben einen Ein-Klick für Heroku eingerichtet und Sie können die TTL auf nur eine Minute einstellen. Dann ändern Sie auf der GoDaddy-Seite einfach die DNS-Server von den Go-Daddy-Servern zu den DNS-Servern (alles auf der DNS-Website erklärt). EINFACH;)

Ihre Domain wird weiterhin von GoDaddy gehostet

GoDaddy ist meiner bescheidenen Meinung nach nicht der richtige Ort, um Sie zu verwalten.

Paul Williams
quelle
Ich habe es in GoDaddy geschafft. Aber ich werde es überprüfen! Danke :)
Allegutta
Kein Grund, für DNS zu bezahlen, wenn Godaddys Arbeit für grundlegende Anwendungsfälle gut funktioniert.
Phillyslick
1
Sehr grundlegende Anwendungsfälle. Es gibt immer die kostenlose Version von Cloudflare, wenn Sie nicht für einen anständigen DNS-Service bezahlen möchten;)
Paul Williams
Cloudflare macht die Site langsam.
TheVinspro
0

Eine der einfachsten Möglichkeiten, eine externe Domain mit Heroku einzurichten, ist die Verwendung dieses Addons: https://addons.heroku.com/zerigo_dns - Sie müssen lediglich auf die DNS-Nameserver verweisen

a.ns.zerigo.net
b.ns.zerigo.net
c.ns.zerigo.net
d.ns.zerigo.net
e.ns.zerigo.net

Ich bin nicht mit Zerigo DNS verbunden - nur ein glücklicher Benutzer. Ja, es ist kostenlos für 50.000 Anfragen pro Monat und für 20 US-Dollar pro Monat erhalten Sie unbegrenzte Anfragen.

Hoffe das hilft.

Paul
quelle
Ab dem 31. Januar 2014 bietet Zerigo das kostenlose Konto nicht mehr an
am
Oh Tag. Könnte stattdessen mein DNS auf Cloudflare setzen.
Paul
Ich kann jetzt kostenlos Konto sehen
JVK