Heroku / GoDaddy: kirim domain telanjang ke www [ditutup]

142

Saya mencoba mencari cara untuk mendapatkan domain telanjang untuk situs web saya untuk mengarahkan ulang ke domain www. Saya menggunakan Heroku dan memiliki domain dari GoDaddy. Karena Heroku, catatan A saya sudah diatur sebagai:

@: 75.101.145.87

@: 75.101.163.44

@: 174.129.25.170

Dan www CNAME saya menunjuk ke proxy.heroku.com.

Saya telah mencari di seluruh internet, tetapi tidak dapat menemukan jawaban yang sederhana dan gratis untuk bagaimana saya dapat melakukan pengalihan ini. Beberapa jawaban membahas menggunakan layanan berbayar, yang tidak ingin saya lakukan, dan yang lain berbicara tentang masuk dan mengubah pengaturan Heroku, tetapi kemudian tidak benar-benar memberikan banyak penjelasan. Saat ini, jika Anda pergi ke domain telanjang saya, itu hanya Heroku yang mengatakan bahwa tidak ada aplikasi seperti itu, sementara jika Anda pergi ke domain www saya itu adalah aplikasi saya.

Andrew Latham
sumber
8
FAQ Heroku hanya mengatakan bagaimana melakukan pengalihan dengan DNSimple. Halaman dukungan mereka terhubung ke StackOverflow.
Andrew Latham
32
Saya pikir respons Emil agak keras pada ini, situs ini adalah sumber daya untuk memecahkan masalah yang kita miliki sepanjang perjalanan pemrograman dan itu adalah masalah yang saya alami sekarang! : D
Daniel Morris
Ini mungkin harus ditutup sebagai Dupe daripada Off-Topic: stackoverflow.com/questions/16022324/…
Chris Moschini
2
@ChrisMoschini jawaban yang diterima pada pertanyaan yang Anda referensi tidak berfungsi di GoDaddy karena GoDaddy tidak mendukung catatan ALIAS, hanya CNAME. Ini adalah pertanyaannya sendiri menurut saya.
Topher Hunt
1
Apa pun Rekaman yang diatur, tidak ada kemungkinan domain telanjang diarahkan langsung ke heroku. Kami hanya dapat mengatur agar diarahkan ke wwwCNAME yang diarahkan your-app-name.herokuapp.com.
Chetabahana

Jawaban:

231

Di GoDaddy, gunakan fitur "Penerusan" untuk menyiapkan penerusan dari yourdomain.comke www.yourdomain.com. Fitur penerusan dapat diakses di Manajer Domain di bagian bawah "Informasi Domain":

Penerusan domain di GoDaddy

Jika Anda melakukan ini, maka semua lalu lintas ke domain Anda.com akan dialihkan ke aplikasi Heroku CNAME (yang merupakan pendekatan yang lebih baik ).

Satu catatan, namun, jika Anda berada di tumpukan Cedar maka jangan gunakan proxy.heroku.comuntuk host wwwCNAME Anda . Sebaliknya gunakan your-app-name.herokuapp.com. Rincian ini dibahas di sini .

GoDaddy juga menentukan bahwa agar nama domain Anda diteruskan, catatan A-nya harus menunjuk ke 64.202.189.170 atau harus jatuh di antara rentang berikut: 50.63.202.1 - 50.63.202.31 atau 184.168.221.1 - 184.168.221.31.

Ryan Daigle
sumber
14
apakah ini membuat peringatan / kesalahan jika Anda menggunakan SSL sebagai klaim heroku? kata mereka jika https: // example.com dialihkan ada peringatan.
Jaqx
2
@jaqx, ini terjadi pada saya, apakah Anda menemukan cara untuk menghindari pengguna mendapatkan peringatan ini?
jackerman09
3
@ jackerman09 Saya baru saja bosan dengan kerumitan dan beralih ke DNSimple
Jaqx
5
@Matt tidak ada cara untuk melakukan ini dengan GoDaddy. Gunakan fitur ALIAS / ANAME dari penyedia lain seperti DNSimple atau DNS Made Easy jika Anda memerlukan ini.
Ryan Daigle
3
@RyanDaigle Terima kasih Ryan. Saya sarankan semua orang meninggalkan godaddy karena lebih dari satu alasan . NameCheap.com adalah yang saya gunakan sekarang. Mereka hebat, dan mereka mendukung apa yang saya coba lakukan. Juga, NameCheap menerima bitcoin .
Matt
22

Anda juga dapat menggunakan http://wwwizer.com untuk meneruskan dari domain telanjang Anda ke www. Di GoDaddy di manajer DNS di bawah catatan A dalam jenis pos @ di 174.129.25.170. Mereka akan secara otomatis mengalihkan dari domain telanjang ke domain dengan www. di depannya.

TMilligan
sumber
5
mengapa membayar biaya lain kepada orang lain?
Benjamin
4
Anda, tuan, adalah penyelamat. @Vezu: penerusan non-ssl sepenuhnya gratis. Anda cukup arahkan catatan A Anda untuk domain telanjang ke alamat IP itu dan itu akan mengarahkan browser ke domain www. Anda bahkan tidak perlu akun dengan mereka.
P O'Conbhui
Saya mencoba untuk menggabungkan wwwizer untuk milik saya, dan dalam catatan A saya, saya memiliki host sebagai "@" dan poin ke sebagai 174.129.25.170, sesuai instruksi wwwizer, tetapi saya mendapatkan halaman pesan kesalahan mereka ketika saya mengunjungi domain telanjang saya! Apakah saya melakukan ini dengan benar ??
tx291
7

Di Editor Zona DNS GoDaddy, Anda akan ingin mengonfigurasi catatan CNAME Anda www untuk mengarah ke @. Dalam A Record Anda, Anda akan menggunakan wildcard (*) untuk menunjuk ke alamat IP dan A Record kedua yang menggunakan @ sebagai host yang juga akan menunjuk ke alamat web. Cara ini,

subdomain1.example.com will forward to your IP
www.example.com will forward to your IP
silly.example.com will forward to your IP
anything.example.com will forward to your IP

masukkan deskripsi gambar di sini

Pertanyaan yang Sering Diajukan

Bisakah saya mengarahkan * .mydomain.com ke aplikasi Heroku saya?

Ya, dengan menggunakan fitur Custom Domains Heroku Anda dapat mengarahkan domain wildcard ke aplikasi Anda.

Alamat IP apa yang harus saya gunakan untuk mengarahkan domain khusus saya ke Heroku?

Susunan perutean Heroku menggunakan kumpulan alamat IP yang dapat berubah kapan saja, dan menggunakan catatan untuk mengarahkan ke aplikasi Anda tidak didukung. Untuk memastikan domain Anda selalu menunjuk dengan benar ke jala perutean, konfigurasikan subdomain (mis. Www di www.example.org) menggunakan catatan CNAME:

If the app is on…   Then CNAME the subdomain to
Bamboo  yourapp.heroku.com
Cedar   yourapp.herokuapp.com

Domain telanjang (atau telanjang / apeks) (misalnya example.org) harus dihindari karena ketersediaan dan konsekuensi waktu operasional.

Mengapa saya tidak bisa menambahkan subdomain.mydomain.com untuk aplikasi saya?

Dalam beberapa kasus, upaya untuk menambahkan domain khusus (seperti subdomain.mydomain.com) untuk suatu aplikasi dapat mengakibatkan kesalahan seperti ini:

 ! mydomain.com is owned by another user

Semua aplikasi untuk domain basis yang diberikan harus dimiliki oleh akun Heroku yang sama. Kesalahan di atas berarti bahwa orang lain telah menambahkan domain khusus mydomain.com ke salah satu aplikasi mereka.

kobaltz
sumber
1
Apakah alamat IP dan alamat web untuk Heroku adalah appname.heroku.com atau proxy.heroku.com?
Andrew Latham
1
Anda harus benar-benar melihat artikel ini, devcenter.heroku.com/articles/custom-domains , karena mencakup semua yang ingin Anda lakukan.
kobaltz
1
Pendekatan ini mengarahkan CNAME wwwke @ yang masih merutekan lalu lintas ke alamat IP tetap (yang memiliki semua kerugian yang sama dengan catatan-A). Gunakan pengalihan tingkat atas, di GoDaddy ini disebut "penerusan".
Ryan Daigle
5

Jika Anda memiliki pengaturan alamat IP pada domain telanjang Anda dan www cname'd Anda ke yourappname.herokuapp.com maka yang perlu Anda lakukan adalah menggunakan sesuatu seperti RackRewrite dalam aplikasi Anda untuk mengarahkan kembali permintaan ketika mereka tiba di aplikasi Anda.

Yang ingin Anda siapkan adalah permintaan apa pun ke domain polos akan diarahkan ke alamat www Anda. Setelah mengikuti petunjuk instalasi tambahkan inisialisasi di config / inisialisasi

 ApplicationName::Application.config.middleware.insert_before(Rack::Lock, Rack
 r301 %r{.*}, 'http://www.yourdomain.com$&', :if => Proc.new {|rack_env
  rack_env['SERVER_NAME'] != 'www.yourdomain.com'
 }
 end if Rails.env == 'production'

Yang mengatakan, jika URL yang diminta bukan www.domainanda.com maka 301 redirect ke www.yuordomain.com tetapi hanya jika itu berjalan dalam produksi.

John Beynon
sumber
1
Idealnya, ini dilakukan pada tingkat DNS menghindari perjalanan melalui alamat IP tetap Heroku. Plus, tidak yakin apakah ini aplikasi Ruby atau bukan?
Ryan Daigle
Ryan, pengalihan tidak dapat dilakukan pada tingkat DNS. Itu selalu dilakukan dengan HTTP.
Emil Vikström
Mengapa sebagai penginisialisasi dan mengapa tidak memasukkannya ke konfigurasi lingkungan produksi?
ckarbass
Ketika saya menggunakan heroku + domain custome saya, haruskah saya memiliki catatan A yang menunjuk ke heroku? Jika ya, apa nilainya?
Alan Coromano
3

Agar ini bekerja dengan Solusi Jaringan lakukan hal berikut:

Solusi Jaringan mengarahkan yourdomain.com ke www.domainanda.com. Begini caranya.

  1. Di dalam Account Manager , pilih My Domain Names

  2. Pilih nama domain yang ingin Anda kelola

  3. Di kotak hijau, pilih Ubah Tempat Domain Poin

  4. Pilih DNS Tingkat Lanjut , lalu Lanjutkan

  5. Pertama, edit A Records dengan memilih Edit A Records

    Untuk "@ none" masukkan alamat IP berikut 205.178.189.129, kosongkan catatan untuk "www" dan "* (Lainnya)" , lalu pilih Lanjutkan

  6. Kedua, edit Host Alias ​​(catatan CNAME) dengan memilih Edit Catatan CNAME

    Masukkan "www" di kolom Alias

    Biarkan TTL diatur ke 7200 tetapi pada baris yang sama, masukkan server nama yang disediakan oleh layanan blog di bagian Host Lainnya [IE IKUTI INSTRUKSI HEROKU SEKARANG www -> yourapp.herokuapp.com (Cedar Stack)]

    Pilih Lanjutkan

Sekarang tunggu dan periksa domain dengan perintah terminal berikut:

host domain.com
host www.domain.com
blnc
sumber