2016-03-09 19 views
5

Theo this Heroku documentation chúng tôi có thể cho phép ứng dụng Heroku được lưu trữ tại myapp.herokuapp.com để được truy cập với miền tùy chỉnh myapp.com.Tại sao miền tùy chỉnh chuyển hướng đến herokuapp.com?

Tôi đã thêm các hồ sơ sau để GoDaddy DNS Zone tập tin của tôi:

A (Host) 
Host  Points To     TTL 
-------------------------------------------------- 
@   50.63.202.1     1/2 Hour 


CName (Alias) 
Host  Points To     TTL 
-------------------------------------------------- 
email  email.secureserver.net  1/2 Hour 
ftp   @       1/2 Hour 
www   myapp.herokuapp.com   1/2 Hour 

Thông thường các điểm A ghi vào một máy chủ. Trong trường hợp này Heroku không cung cấp địa chỉ IP cho các ứng dụng đám mây của nó, và dường như CNAME là đủ.

Điều hướng đến www.myapp.com hoặc myapp.com chuyển hướng đến https://myapp.herokuapp.com. Tuy nhiên, điều hướng đến http://www.myapp.com/blog/post/1 (bất kỳ địa chỉ nào không phải là trang chủ) sẽ ở lại với miền www.myapp.com và liên kết nhấp là OK - Ngoại trừ khi nhấp vào liên kết đến trang chủ, chúng tôi sẽ được chuyển hướng đến địa chỉ myapp.herokuapp.com.

Làm cách nào để có thể thiết lập để khách truy cập không thấy địa chỉ herokuapp.com trừ khi truy cập địa chỉ đó bằng địa chỉ đó?

Sản lượng của các bản ghi Heroku --tail myapp --app:

2016-03-11T01:13:49.756887+00:00 heroku[router]: at=info method=GET path="/" host=vast-hamlet-33090.herokuapp.com request_id=6177aa6c-dc5f-4de5-a1c6-1ff8b1194849 fwd="24.17.117.236" dyno=web.1 connect=1ms service=24ms status=304 bytes=181 
2016-03-11T01:13:49.760014+00:00 app[web.1]: 24.17.117.236 - - [11/Mar/2016:01:13:49 +0000] "GET/HTTP/1.1" 304 - "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.116 Safari/537.36" 

Dường như các ứng dụng không bao giờ nhận được yêu cầu từ www.myapp.com, nhưng chỉ myapp.herokuapp.com.

Kết quả của Heroku lĩnh -a myapp:

=== myapp Heroku Domain 
myapp.herokuapp.com 

=== myapp Custom Domains 
Domain Name   DNS Target 
------------------ ------------------- 
www.myapp.com  myapp.herokuapp.com 
myapp.com   myapp.herokuapp.com 

Trả lời

7

Cuối cùng, cập nhật HEROKU_URL để 'http://www.myapp.com' sửa lại lỗi này. Tôi nghĩ rằng tôi đã thiết lập này, nhưng tôi đã thay đổi nó thành 'http://myapp.herokuapp.com' chỉ để tôi có thể truy cập bảng/ma/quản trị (không chấp nhận yêu cầu từ URL không HEROKU_URL)

Sau khi tôi thay đổi lại cũng có một vấn đề riêng biệt với trình duyệt Chrome chuyển hướng trước khi yêu cầu truy cập vào máy chủ, vì vậy ứng dụng Node đã nhận được yêu cầu cho myapp.herokuapp.com. Tôi đã phát hiện ra điều này bằng cách cố gắng sử dụng một trình duyệt khác để truy cập vào ứng dụng của tôi. Tôi đã xóa cookie và bộ nhớ cache của trình duyệt và myapp.com không còn được chuyển hướng trong Chrome nữa.

+0

Cảm ơn bạn! Tôi đã bỏ qua phần đó, đã quá tập trung vào phần Domain mà tôi không thấy các biến ENV;) – Stan

+0

@Stan Vui mừng điều này đã giúp bạn :) –

+0

Để Chrome hoạt động độc đáo, tôi phải xóa bộ nhớ cache DNS của Chrome (https://superuser.com/a/203702/252083) và ổ cắm, cùng với bộ nhớ cache DNS của hệ điều hành. Đã đủ thời gian và nó đã hoạt động. Cảm ơn bạn! – clayzermk1

Các vấn đề liên quan