Heroku / GoDaddy : 나체 도메인을 www로 보내기 [닫기]


142

내 웹 사이트의 기본 도메인을 www 도메인으로 리디렉션하는 방법을 찾으려고합니다. 저는 Heroku를 사용하고 있으며 GoDaddy의 도메인을 보유하고 있습니다. Heroku로 인해 내 A 레코드는 이미 다음과 같이 설정되어 있습니다.

@ : 75.101.145.87

@ : 75.101.163.44

@ : 174.129.25.170

그리고 내 www CNAME은 proxy.heroku.com을 가리 킵니다.

인터넷 전체를 살펴 보았지만이 리디렉션을 수행하는 방법에 대한 간단하고 무료 답변을 찾을 수 없습니다. 일부 답변은 내가 원하지 않는 유료 서비스 사용에 대해 이야기하고 다른 답변은 Heroku 설정에 들어가서 수정하는 것에 대해 이야기하지만 실제로 많은 설명을하지는 않습니다. 현재 네이 키드 도메인으로 가면 그러한 앱이 존재하지 않는다고 말하는 것은 Heroku 일 뿐이며 내 www 도메인으로 가면 내 앱입니다.


8
Heroku FAQ는 DNSimple으로 리디렉션하는 방법 만 알려줍니다. 지원 페이지는 StackOverflow에 연결됩니다.
Andrew Latham

32
나는 Emil의 응답이 이것에 대해 약간 가혹하다고 생각합니다.이 사이트는 우리가 프로그래밍의 여정에서 겪는 문제를 해결하기위한 리소스이며 지금 당장 가지고있는 문제입니다! : D
Daniel Morris

이것은 아마도 Off-Topic 대신 Dupe로 닫혀 져야합니다 : stackoverflow.com/questions/16022324/…
Chris Moschini

2
GoDaddy는 ALIAS 레코드를 지원하지 않으며 CNAME 만 지원하므로 @ChrisMoschini 참조 질문에 대한 답변은 GoDaddy에서 작동하지 않습니다. 이것은 내가 생각하는 자체 질문입니다.
토퍼 헌트

1
A 레코드가 설정되어 있더라도 나체 도메인이 헤 로쿠를 직접 가리킬 가능성은 없습니다. wwwCNAME이 (가) 가리키는 경로 만 설정할 수있었습니다 your-app-name.herokuapp.com.
Chetabahana

답변:


231

에서 GoDaddy에, 앞으로의 설정에 "전달"기능을 사용 yourdomain.com하는 방법에 대해 www.yourdomain.com. 전달 기능은 "도메인 정보"섹션의 맨 아래에있는 도메인 관리자에서 액세스 할 수 있습니다.

GoDaddy에서 도메인 전달

이렇게하면 yourdomain.com에 대한 모든 트래픽이 Heroku 앱 CNAME으로 라우팅됩니다 (이 방법더 좋습니다 ).

그러나 Cedar 스택proxy.heroku.com 에 있으면 wwwCNAME 호스트에 사용하지 마십시오 . 대신을 사용하십시오 your-app-name.herokuapp.com. 이러한 세부 사항은 여기에서 다룹니다 .

또한 GoDaddy와 지정 도메인 이름을 전달하기 위해서는, 자사의 A 레코드는 64.202.189.170 지적해야 또는 다음 범위 사이에 가을해야 : 50.63.202.1 - 50.63.202.31 또는 184.168.221.1 - 184.168.221.31.


14
heroku 주장으로 SSL을 사용하는 경우 경고 / 오류가 발생합니까? 그들은 https : // example.com이 리디렉션되면 경고가 있다고 말했다.
Jaqx

2
@ jaqx, 이것은 나에게 일어나고 있습니다. 사용자 가이 경고를 피하는 방법을 찾았습니까?
jackerman09

3
@ jackerman09 방금 번거 로움을 느끼고 DNSimple으로 전환했습니다
Jaqx

5
@Matt GoDaddy로이 작업을 수행 할 방법이 없습니다. 필요한 경우 DNSimple 또는 DNS Made Easy와 같은 다른 공급자의 ALIAS / ANAME 기능을 사용하십시오.
Ryan Daigle

3
@RyanDaigle 감사합니다 Ryan. 나는 모두가 여러 가지 이유로 godaddy를 떠나는 것이 좋습니다 . NameCheap.com 은 내가 지금 사용하는 사람입니다. 그들은 훌륭하고 내가하려는 일을지지합니다. 또한 NameCheap은 bitcoin을 허용 합니다.
Matt

22

http://wwwizer.com 을 사용 하여 기본 도메인에서 www로 전달할 수도 있습니다 . DNS 관리자의 GoDaddy에서 174.129.25.170의 @ 제목 유형의 A 레코드 아래에 있습니다. 기본 도메인에서 www가있는 도메인으로 자동 리디렉션됩니다. 그것의 앞에.


5
다른 사람에게 왜 추가 요금을 지불해야합니까?
Benjamin

4
당신은 생명의 은인입니다. @Vezu : 비 SSL 전달은 완전 무료입니다. 기본 도메인에 대한 A 레코드를 해당 IP 주소로 지정하면 브라우저가 www 도메인으로 리디렉션됩니다. 당신은 그들과 함께 계정이 필요하지 않습니다.
PO O'Conbhui

나는 wwwizer를 내 용으로 통합하려고하는데 내 A 레코드에 호스트가 "@"이고 wwwizer의 지침에 따라 174.129.25.170으로 포인트가 있지만 알몸 도메인을 방문하면 오류 메시지 페이지가 나타납니다! 내가 올바르게 했습니까?
tx291

7

GoDaddy의 DNS 영역 편집기에서 CNAME 레코드 www가 @을 가리 키도록 구성하려고합니다. A 레코드에서 와일드 카드 (*)를 사용하여 IP 주소를 가리키고 @를 웹 주소를 가리키는 호스트로 사용하는 두 번째 A 레코드를 사용합니다. 이 방법,

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

여기에 이미지 설명을 입력하십시오

자주 묻는 질문

* .mydomain.com을 Heroku 앱으로 지정할 수 있습니까?

예. Heroku의 무료 사용자 지정 도메인 기능을 사용하면 와일드 카드 도메인을 응용 프로그램으로 지정할 수 있습니다.

사용자 정의 도메인을 Heroku로 지정하려면 어떤 IP 주소를 사용해야합니까?

Heroku 라우팅 스택은 언제든지 변경 될 수있는 IP 주소 모음을 사용하며 A 레코드를 사용하여 앱을 가리키는 것은 지원되지 않습니다. 도메인이 항상 라우팅 메시를 올바르게 가리 키도록하려면 CNAME 레코드를 사용하여 하위 도메인 (예 : www.example.org의 www)을 구성하십시오.

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

가용성 및 가동 시간 결과로 인해 알몸 (또는 베어 / 에펙 스) 도메인 (예 : example.org)은 피해야합니다.

내 앱에 subdomain.mydomain.com을 추가 할 수없는 이유는 무엇입니까?

경우에 따라 앱에 대한 사용자 지정 도메인 (subdomain.mydomain.com 등)을 추가하려고하면 다음과 같은 오류가 발생할 수 있습니다.

 ! mydomain.com is owned by another user

지정된 기본 도메인에 대한 모든 응용 프로그램은 동일한 Heroku 계정이 소유해야합니다. 위의 오류는 다른 사람이 이미 mydomain.com 사용자 정의 도메인을 앱 중 하나에 추가했음을 의미합니다.


1
Heroku의 IP 주소와 웹 주소는 appname.heroku.com 또는 proxy.heroku.com입니까?
Andrew Latham


1
이 접근 방식은 CNAME www을 @로 지정하여 트래픽을 여전히 고정 IP 주소 (A 레코드와 동일한 단점이 있음)로 라우팅합니다. GoDaddy에서는 최상위 리디렉션을 사용하고 대신 '전달'이라고합니다.
Ryan Daigle

5

네이 키드 도메인에 IP 주소를 설정하고 www cname을 yourappname.herokuapp.com으로 설정 한 경우 요청이 애플리케이션에 도착할 때 요청을 리디렉션하기 위해 애플리케이션에서 RackRewrite 와 같은 것을 사용하기 만하면 됩니다.

기본 도메인에 대한 모든 요청은 www 주소로 리디렉션됩니다. 설치 지침을 따른 후 config / initializers에 이니셜 라이저를 추가하십시오.

 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'

즉, 요청한 URL이 www.yourdomain.com이 아닌 경우 301은 www.yuordomain.com으로 리디렉션하지만 프로덕션 환경에서 실행중인 경우에만 해당합니다.


1
이상적으로 이것은 Heroku의 고정 IP 주소를 통한 여행을 피하면서 DNS 수준에서 수행됩니다. 또한 이것이 Ruby 앱인지 아닌지 확실하지 않습니까?
Ryan Daigle

Ryan, DNS 수준에서 리디렉션을 수행 할 수 없습니다. 그들은 항상 HTTP로 수행됩니다.
Emil Vikström

이니셜 라이저로서 왜 프로덕션 환경 구성에 넣지 않는가?
ckarbass

heroku + 내 custome 도메인을 사용할 때 heroku를 가리키는 A 레코드가 있어야합니까? 그렇다면 그 가치는 무엇입니까?
Alan Coromano

3

이를 네트워크 솔루션과 함께 사용하려면 다음을 수행하십시오.

yourdomain.com을 www.yourdomain.com으로 가리키는 네트워크 솔루션 방법은 다음과 같습니다.

  1. 계정 관리자 를 선택 내 도메인 이름을

  2. 관리하려는 도메인 이름을 선택하십시오.

  3. 녹색 상자에서 도메인 지점 변경을 선택 하십시오.

  4. 고급 DNS 를 선택한 다음 계속을 선택하십시오.

  5. 먼저, A 레코드 편집 을 선택하여 A 레코드를 편집하십시오.

    "@ none"에 다음 IP 주소 205.178.189.129를 입력하고 "www"및 "* (다른 모든)"레코드를 지우고 계속을 선택하십시오.

  6. 둘째, CNAME 레코드 편집을 선택하여 호스트 별명 (CNAME 레코드)을 편집하십시오.

    별칭 열에 "www"를 입력하십시오

    TTL을 7200으로 설정하고 같은 줄에 블로깅 서비스에서 제공하는 네임 서버를 Other Host 섹션에 입력하십시오 .

    계속을 선택하십시오

이제 다음 터미널 명령을 사용하여 도메인을 확인하십시오.

host domain.com
host www.domain.com
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.