Làm thế nào để cấu hình DNS ứng dụng heroku cho Godaddy Domain?


99

Tôi đã tạo một ứng dụng heroku và muốn cấp miền cho nó từ godaddy.com.

Tôi đã định cấu hình tất cả ba máy chủ do heroku cung cấp nhưng bây giờ tôi gặp lỗi nói:

Heroku | Không có ứng dụng như vậy

Không có ứng dụng nào được định cấu hình tại tên máy chủ đó.

Có lẽ chủ sở hữu ứng dụng đã đổi tên nó hoặc bạn nhập sai URL.

Tôi muốn biết: có cách nào khác để định cấu hình ứng dụng heroku không?

CẬP NHẬT: Phương pháp tiếp cận mới Vui lòng sử dụng liên kết này cho phương pháp mới . Câu trả lời được chấp nhận là tính năng cũ.

Câu trả lời:


74

Tôi đã sử dụng video này để thiết lập miền GoDaddy của mình với Heroku và nó hoạt động hoàn hảo. Rất rõ ràng và giải thích tốt.

Lưu ý: Bỏ qua phần về CNAME yourdomain.com.(lưu ý .) vàheroku addons:add "custom domains"

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


Để tóm tắt video:

1) trên GoDaddy và tạo CNAME với

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

2) kiểm tra xem miền của bạn đã được phổ biến chưa bằng cách gõ host www.yourdomain.comvào dòng lệnh

3) chạy heroku domains:add www.yourdomain.com

4) chạy heroku domains:add yourdomain.com

Nó đã làm việc cho tôi sau những bước này. Hi vọng nó có ích cho bạn!

CẬP NHẬT : mọi thứ đã thay đổi, hãy xem bài đăng này Heroku / GoDaddy: gửi miền trống đến www


1
Bài tốt. Đây là kết thúc để kết thúc những gì bạn cần. Tôi đã chuẩn bị đăng liên kết này.
adu

1
Tôi mới sử dụng webdev, rất tiếc nếu câu hỏi này hơi sơ đẳng, nhưng tôi có giữ hay xóa CNAME mặc định với bí danh wwwvà tên máy chủ @không? Chỉnh sửa: Rất tiếc, có vẻ như chỉ có một cái có thể tồn tại.
pqn

1
Kể từ tháng 2 năm 2019, điều này không hoạt động và GoDaddy sẽ giữ bất kỳ khoản phí nào bạn đã trả cho họ bất kể trừ khi bạn yêu cầu hoàn lại tiền từ rất sớm. Heroku giữ một danh sách các nhà cung cấp DNS được đề xuất. Thêm thông tin về điều này tại đây: devcenter.heroku.com/articles/custom-domains
Matt West,

83

Có 2 bước bạn cần thực hiện,

  1. Thêm addon miền tùy chỉnh và thêm miền bạn sẽ sử dụng, ví dụ: www.mywebsite.com vào ứng dụng của bạn
  2. Đi tới bảng điều khiển của công ty đăng ký tên miền của bạn và đặt www.mywebsite.com làm mục nhập CNAME cho yourapp.herokuapp.com giả sử bạn đang sử dụng ngăn xếp CEDAR.
  3. Có một bước thứ ba nếu bạn muốn sử dụng miền rỗng, ví dụ: mywebsite.com khi bạn phải thêm địa chỉ IP của bộ cân bằng tải Heroku vào DNS của mình cho mywebsite.com

Bạn có thể đọc thêm về điều này tại http://devcenter.heroku.com/articles/custom-domains

Có lẽ bạn đã bỏ lỡ bước đầu tiên?

CẬP NHẬT: Sau thông báo về việc ngừng sử dụng EOL proxy.heroku.com của Bamboo (tháng 9 năm 2014) đối với các ứng dụng Bamboo, vì vậy những ứng dụng này giờ cũng nên sử dụng ánh xạ yourapp.herokuapp.com ngay bây giờ.


10
tên miền tùy chỉnh hiện là một tính năng cốt lõi, vì vậy không có bước cài đặt tiện ích bổ sung nào.
ob1

8
CNAME phải được đặt thành "[ứng dụng của bạn] .herokuapp.com" (cho ngăn xếp Cedar, cho sử dụng tre "[ứng dụng của bạn] .heroku.com")
ob1

13
@JohnBeynon Vẫn sẽ đáng giá khi chỉnh sửa câu trả lời của bạn, vì mọi người đến đây từ Google. ho
Josh Smith

3
Nếu bạn cần phải chuyển hướng miền khỏa thân của bạn (example.com) để ứng dụng Heroku của bạn, bạn có thể sử dụng wwwizer.com/naked-domain-redirect
Gabriel Cebrián

1
Xin lưu ý rằng kể từ ngày 22 tháng 9 năm 2014 , Heroku chỉ hỗ trợ [yourapp].herokuapp.com. Hỗ trợ cho ngăn xếp định tuyến cũ [yourapp].heroku.comsẽ bị loại bỏ.
Gabriel Osorio

16

Bí quyết là

  1. tạo CNAME cho www.myapp.com đến myapp.heroku.com
  2. tạo chuyển hướng 301 từ myapp.com đến www.myapp.com

4
Tôi nhận được 404 cho liên kết đó. liên kết shaks sử dụng cách tiếp cận tương tự.
bebbi

4

Vâng, nhiều thay đổi ở Heroku. Nếu bạn đang sử dụng Heroku dyno cho máy chủ web của mình, bạn phải tìm cách chuyển bí danh từ DNStên này sang DNStên khác (vì mỗi điểm cuối DNS của Heroku có thể phân giải thành nhiều trình bổ sung IP để tự động điều chỉnh theo yêu cầu tải).

Bản CNAMEghi dành cho răng cưa www.example.com->www.example.com.herokudns.com.

Bạn không thể sử dụng CNAMEcho một miền rỗng ( @), tức là example.com(trừ khi bạn tìm thấy một máy chủ định danh có thể làm được CNAME Flattening- đó là những gì tôi đã làm).

Nhưng thực sự là giải pháp đơn giản nhất, mà khá nhiều có thể được đưa về chăm sóc của tất cả trong tài khoản GoDaddy của bạn, là để tạo ra một CNAME recordmà thực hiện điều này: www.example.com -> www.example.com.herokudns.com.

Và sau đó tạo chuyển hướng 301 vĩnh viễn từ example.comđến www.example.com.

Điều này đòi hỏi chỉ có một Heroku tên miền tùy chỉnh cấu hình trong cài đặt ứng dụng Heroku của bạn: www.example.com.herokudns.com. @Jonathan Roy nói về điều này (ở trên) nhưng cung cấp một liên kết xấu.


2

Bạn không thể sử dụng miền rỗng của your-domain.comnếu nó không được chuyển hướng đến www.your-domain.com. Heroku sử dụng www.yourdomain.comhoạt động ở đây như một miền phụ. Vì vậy, khi bạn làm theo hướng dẫn mặc định để sử dụng your-domain.comthì bạn sẽ cần phải gán cả hai.

Chúng tôi thực sự có thể chỉ định miền rỗng mà không có www.your-domain.com. Chỉ sử dụng your-domain.comkhi nhà cung cấp dns của miền (Máy chủ định danh) hỗ trợ ALIAS hoặc ANAME cho Bản ghi @ example.herokuapp.commà không có CNAME www.your-domain.comcho nó.

Nó sẽ cho phép bạn trỏ www.your-domain.comđến các hosting khác riêng biệt (độc lập).


0

Tôi đã trỏ không phải www tới 54.243.64.13www.domain.comtới alias.herokuapp.comvà tất cả đều hoạt động tốt.

Chỉ tìm thấy IP sau khi trỏ www.domain.comvà sau đó chạy lệnh đào trên www.domain.comvà nó hiển thị:

;; 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.

Có thể không lý tưởng nhưng đã hiệu quả.


1
Trang web của bạn có thể ngừng hoạt động định kỳ nếu bạn sử dụng giải pháp này. IP có thể bị thay đổi (và nó sẽ thay đổi), điều này sẽ giết chết thiết lập DNS bản ghi A của bạn. Bạn sẽ phải làm việc này 2-3 tháng một lần hoặc sau bất kỳ sự cố ngừng hoạt động nào tại Heroku. Chúng tôi đã giải quyết vấn đề này và cuối cùng đang chuyển sang cloudflare hoặc easyDNS để ngăn chặn điều này.
David Nelson
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.