Bagaimana cara mengkonfigurasi DNS aplikasi heroku ke Domain GoDaddy?

99

Saya telah membuat aplikasi heroku dan ingin memberikan domain dari godaddy.com.

Saya telah mengonfigurasi ketiga host yang disediakan oleh heroku tetapi sekarang saya mendapatkan kesalahan yang mengatakan:

Heroku | Tidak ada aplikasi seperti itu

Tidak ada aplikasi yang dikonfigurasi pada nama host itu.

Mungkin pemilik aplikasi telah mengganti namanya, atau Anda salah mengetik URL.

Saya ingin tahu: apakah ada cara lain untuk mengonfigurasi aplikasi heroku?

DIPERBARUI: Pendekatan Baru Silakan gunakan tautan ini untuk pendekatan baru . Jawaban yang diterima adalah fitur lama.

Arpit Vaishnav
sumber

Jawaban:

74

Saya menggunakan videocast ini untuk menyiapkan domain GoDaddy saya dengan Heroku, dan itu bekerja dengan sempurna. Sangat jelas dan dijelaskan dengan baik.

Catatan: Lewati bagian tentang CNAME yourdomain.com.(perhatikan .) danheroku addons:add "custom domains"

http://blog.heroku.com/archives/2009/10/7/heroku_casts_setting_up_custom_domains/


Untuk meringkas video:

1) di GoDaddy dan buat CNAME dengan

Alias Name: www
Host Name: proxy.heroku.com

2) periksa apakah domain Anda telah disebarkan dengan mengetik host www.yourdomain.comdi baris perintah

3) lari heroku domains:add www.yourdomain.com

4) lari heroku domains:add yourdomain.com

Ini berhasil bagi saya setelah langkah-langkah ini. Semoga berhasil juga untuk Anda!

UPDATE : banyak hal telah berubah, lihat posting ini Heroku / GoDaddy: kirim domain polos ke www

Alexandre
sumber
1
Pos yang bagus. Ini adalah ujung ke ujung apa yang Anda butuhkan. Saya akan memposting tautan ini.
adu
1
Saya baru mengenal webdev, mohon maaf jika pertanyaan ini agak mendasar, tetapi apakah saya menyimpan atau menghapus CNAME default dengan alias wwwdan nama host @? Edit: Ups, sepertinya hanya satu yang bisa ada.
pqn
1
Mulai Februari 2019, ini tidak berfungsi dan GoDaddy akan menyimpan semua biaya yang Anda bayarkan, kecuali jika Anda meminta pengembalian dana lebih awal. Heroku menyimpan daftar penyedia DNS yang direkomendasikan. Lebih lanjut tentang ini di sini: devcenter.heroku.com/articles/custom-domains
Matt West
83

Ada 2 langkah yang perlu Anda lakukan,

  1. Tambahkan addon domain kustom dan tambahkan domain yang akan Anda gunakan, misalnya www.mywebsite.com ke aplikasi Anda
  2. Buka panel kontrol registrar domain Anda dan setel www.mywebsite.com menjadi entri CNAME ke yourapp.herokuapp.com dengan asumsi Anda menggunakan tumpukan CEDAR.
  3. Ada langkah ketiga jika Anda ingin menggunakan domain polos, misalnya mywebsite.com ketika Anda harus menambahkan alamat IP penyeimbang beban Heroku ke DNS Anda untuk mywebsite.com

Anda dapat membaca lebih lanjut tentang ini di http://devcenter.heroku.com/articles/custom-domains

Mungkin Anda telah melewatkan langkah pertama?

PEMBARUAN: Setelah pengumuman bahwa Bamboo's EOL proxy.heroku.com akan dihentikan (September 2014) untuk aplikasi Bamboo, jadi sekarang ini juga harus menggunakan pemetaan yourapp.herokuapp.com.

John Beynon
sumber
10
domain kustom sekarang menjadi fitur inti, jadi tidak perlu melakukan langkah penginstalan add-on.
ob1
8
CNAME harus disetel ke "[aplikasi Anda] .herokuapp.com" (untuk tumpukan Cedar, untuk penggunaan bambu "[aplikasi Anda] .heroku.com")
ob1
13
@JohnBeynon Masih berguna untuk mengedit jawaban Anda, karena orang datang ke sini dari Google. batuk
Josh Smith
3
Jika Anda perlu mengalihkan domain polos (example.com) ke aplikasi heroku, Anda dapat menggunakan wwwizer.com/naked-domain-redirect
Gabriel Cebrian
1
Harap diperhatikan bahwa mulai 22 September 2014 , Heroku hanya mendukung [yourapp].herokuapp.com. Dukungan untuk tumpukan perutean lama [yourapp].heroku.comakan dihentikan.
Gabriel Osorio
16

Triknya adalah

  1. buat CNAME untuk www.myapp.com ke myapp.heroku.com
  2. buat pengalihan 301 dari myapp.com ke www.myapp.com
Jonathan Roy
sumber
4
Saya mendapatkan 404 untuk tautan itu. shaks link menggunakan pendekatan yang sama.
bebbi
4

Ya, banyak perubahan di Heroku. Jika Anda menggunakan dyno Heroku untuk server web Anda, Anda harus menemukan cara untuk alias dari satu DNSnama ke DNSnama lain (karena setiap titik akhir DNS Heroku dapat menyelesaikan ke banyak alamat IP untuk menyesuaikan secara dinamis untuk meminta pemuatan).

Sebuah CNAMErecord untuk aliasing www.example.com->www.example.com.herokudns.com.

Anda tidak dapat menggunakan CNAMEdomain polos ( @), yaitu example.com(kecuali jika Anda menemukan server nama yang dapat melakukannya CNAME Flattening- itulah yang saya lakukan).

Tapi benar-benar solusi termudah, yang dapat cukup banyak diambil mengurus semua di akun GoDaddy Anda, adalah untuk menciptakan CNAME recordyang melakukan hal ini: www.example.com -> www.example.com.herokudns.com.

Lalu buat pengalihan 301 permanen dari example.comke www.example.com.

Ini hanya membutuhkan satu heroku nama domain khusus dikonfigurasi dalam pengaturan aplikasi heroku Anda: www.example.com.herokudns.com. @Jonathan Roy berbicara tentang ini (di atas) tetapi memberikan tautan yang buruk.

BoiseBaked
sumber
2

Anda tidak dapat menggunakan domain polos your-domain.comjika tidak dialihkan ke www.your-domain.com. Heroku menggunakan www.yourdomain.comyang bertindak di sini sebagai subdomain. Jadi, ketika Anda mengikuti instruksi default untuk digunakan your-domain.commaka Anda harus menetapkan keduanya.

Kami sebenarnya hanya dapat menetapkan domain polos tanpa www.your-domain.com. Gunakan hanya your-domain.comjika penyedia dns domain (NameServers) mendukung ALIAS atau ANAME untuk @ Record ke example.herokuapp.comtanpa CNAME www.your-domain.compadanya.

Ini akan memungkinkan Anda untuk menunjuk www.your-domain.comke hosting lain secara terpisah (independen).

Chetabahana
sumber
0

Saya menunjuk non-www ke 54.243.64.13dan www.domain.comke alias.herokuapp.comdan semua bekerja dengan baik.

Menemukan IP hanya setelah menunjuk www.domain.comdan kemudian menjalankan perintah dig di www.domain.comdan itu menunjukkan:

;; ANSWER SECTION:
www.domain.com. 14400  IN      CNAME   aliasat.herokuapp.com.
aliasat.herokuapp.com. 300 IN CNAME us-east-1-a.route.herokuapp.com.
us-east-1-a.route.herokuapp.com. 60 IN  A       54.235.186.37

;; AUTHORITY SECTION:
herokuapp.com.          900     IN      NS      ns-1378.awsdns-44.org.
herokuapp.com.          900     IN      NS      ns-1624.awsdns-11.co.uk.
herokuapp.com.          900     IN      NS      ns-505.awsdns-63.com.
herokuapp.com.          900     IN      NS      ns-662.awsdns-18.net.

Mungkin tidak ideal tapi berhasil.

Islandnet.com Web Hosting
sumber
1
Situs web Anda mungkin turun secara berkala jika Anda menggunakan solusi ini. IP dapat berubah (dan itu akan) yang akan mematikan setup DNS A record Anda. Anda harus melakukan ini setiap 2-3 bulan atau setelah pemadaman apa pun di Heroku. Kami telah menangani ini dan akhirnya pindah ke cloudflare atau easyDNS untuk mencegah hal ini.
David Nelson