ตั้งค่า Heroku และ GoDaddy ไหม [ปิด]


108

ฉันกำลังพยายามหาชื่อโดเมนที่ซื้อผ่าน GoDaddy เพื่อทำงานกับไซต์ที่โฮสต์ Heroku ของฉัน

ฉันจะกำหนดค่าชื่อโดเมนของฉันให้ทำงานกับ Heroku ได้อย่างไร?


21
ฉันไม่เห็นด้วยว่าคำถามกว้างเกินไป ฉันพบว่ามันค่อนข้างเฉพาะเจาะจง การตั้งค่าแอพ Ruby on rail ด้วย heroku และสร้างโดเมน GoDaddy ที่ชี้ไปที่มัน ฉันมีปัญหาเดียวกันแน่นอนและคำตอบที่ให้มานี้ทำให้ฉันมีวิธีแก้ปัญหาที่ฉันกำลังมองหา
Hector Ordonez

คำตอบ:


300

[อัปเดต 31.10.2014] เอาล่ะ! มันได้ผล! นี่คือวิธีที่ฉันทำตั้งแต่เริ่มต้นดังนั้นคนอื่น ๆ ที่มีปัญหาเดียวกันก็สามารถแก้ไขได้เช่นกัน ก่อนอื่นฉันจะอธิบายวิธีตั้งค่า Heroku และ GoDaddy จากนั้นฉันจะอธิบายวิธีสร้างโดเมนเปล่า (www.example.com -> example.com)

ตั้งค่า Heroku และ GoDaddy:

  1. ในโฟลเดอร์โครงการของคุณในเทอร์มินัล (บนคอมพิวเตอร์ของคุณ) เขียนheroku domains:add www.example.com( www.example.comโดเมนที่คุณซื้อที่ GoDaddy อยู่ที่ไหน)

  2. ลงชื่อเข้าใช้ GoDaddy -> DOMAINS -> เลือกโดเมนของคุณ -> Launch (จะนำคุณไปยังรายละเอียดโดเมน)

  3. คลิกแท็บ 'DNS Zone File'

  4. ลบระเบียน CNAME ชื่อ "www" (ซึ่งชี้ไปที่ @)

  5. คลิก 'Add record' -> CNAME (Alias) -> 'Host' should be wwwและ 'Points to' ควรเป็นที่อยู่ Heroku ของคุณ (ตัวอย่าง supermoo-bil-3411.herokuapp.com) TTL ได้ 1 ชม.

อาจใช้เวลาสักครู่เพื่อให้ DNS สามารถขับเคลื่อน สำหรับฉันใช้เวลาประมาณ 10 นาที

แค่นั้นแหละ! supermoo-bil-3411.herokuapp.comตอนนี้จะอยู่ภายใต้www.example.com:)

สร้างโดเมนเปล่า:

โดเมนเปล่าไม่จำเป็นต้องเขียน www ข้างหน้าชื่อโดเมนของคุณ ซึ่งสามารถทำได้โดยการส่งต่อไปยังexample.com www.example.comนี่เป็นเรื่องง่ายสุด ๆ ใน GoDaddy:

  1. ในหน้าต่างเดียวกันกับด้านบนคลิกที่แท็บ "การตั้งค่า"

  2. ภายใต้ Forwarding -> Domain -> คลิก 'Manage' -> จากนั้นคลิก 'Add Forwarding'

  3. "ส่งต่อไปยัง" ควรเป็นwww.example.com(โดเมนของคุณ), "ประเภทการเปลี่ยนเส้นทาง" ควรเป็น "301 (ถาวร)", "การตั้งค่าการส่งต่อ" ควรเป็น "ส่งต่อเท่านั้น"

  4. ตรวจสอบให้แน่ใจว่าได้เลือก "อัปเดตเนมเซิร์ฟเวอร์และการตั้งค่า DNS ของฉันเพื่อรองรับการเปลี่ยนแปลงนี้ (แนะนำ)"

    แค่นั้นแหละ! เสร็จแล้ว :)

ลิงค์ที่เป็นประโยชน์:

ขอบคุณ Ryan Kazinec สำหรับความช่วยเหลือ :)


เมื่อฉันลองเพิ่มโดเมน (โดเมน heroku: เพิ่ม www.example.com) ฉันได้รับ: ไม่ได้ระบุบัญชีเรียกใช้คำสั่งนี้ด้วย - บัญชี <ชื่อบัญชี> คุณรู้หรือไม่ว่าบัญชีนี้คืออะไร
misschoksondik

บันทึก cname ควรจะเป็นอย่างไรหากคุณติดตั้งใบรับรอง ssl ผ่านส่วนเสริมของ herokus
Chris Hawkins

2
ฉันคิดว่าเป็นสิ่งสำคัญที่จะต้องทราบว่าหากคุณลบบันทึกทั้งหมดตามที่คุณแนะนำในขั้นตอนที่ 4 ว่าหากคุณตั้งค่าอีเมลแอป Google หรือบริการอื่น ๆ คุณจะทำให้สิ่งต่างๆยุ่งเหยิงได้ ระเบียนเดียวที่ต้องแก้ไขเพื่อให้ทำงานนี้คือระเบียน A และระเบียน CNAME สำหรับ www และโดเมนย่อยที่รวมอยู่
biggles

คุณ @allegutta ติดตั้ง SSL บนไซต์ของคุณหรือไม่ ถ้าเป็นเช่นนั้นนามแฝงจะชี้ไปที่ URL ของ herokussl หรือไม่
Moosa

1
เป็นเพียง CNAME ไม่ใช่ CNAME (นามแฝง)
แจ็คว่าง

1

การตั้งค่า DNS มักจะมีเวลาล่าช้า

คุณพยายามเข้าถึงแอปจากอุปกรณ์อื่นหรือไม่? (พูดว่าสมาร์ทโฟนที่ทำงานบนเครือข่ายอื่นหรือไม่) ฉันเคยเห็นหลายครั้งที่แคช DNS ในเครื่องของฉันก่อให้เกิดปัญหาซึ่งเป็นสาเหตุที่การเข้าถึงจากอุปกรณ์อื่นอาจทำให้สถานการณ์ของคุณสว่างขึ้น

หากคุณทำการเปลี่ยนแปลง DNS จากพีซีที่ใช้ Windows คุณสามารถล้างแคช DNS ของคุณซึ่งบางครั้งสามารถแก้ไขปัญหาของคุณได้

1. ) คลิกขวาที่ CMD.exe (aka command prompt) 2. ) คลิกที่ Run as Administrator 3. ) พิมพ์: ipconfig / flushdns 4. ) กดปุ่ม Enter

แต่จำไว้ว่าการเปลี่ยนแปลง DNS อาจใช้เวลาสักครู่ในการเผยแพร่


สวัสดีเป็นเวลาสามวันแล้วที่ฉันตั้งค่า DNS และฉันได้พยายามโหลดไซต์บนอุปกรณ์และเครื่องต่างๆ ปกติใช้เวลาเท่าไหร่?
Allegutta

1
มีฟิลด์ที่เรียกว่า TTL ในระเบียน DNS ของคุณ สิ่งนี้จะบอกเซิร์ฟเวอร์ DNS อื่น ๆ ว่าจะแคชรายการ DNS นานแค่ไหน (เป็นวินาที) ตั้งค่านี้เป็นค่าต่ำในขณะที่คุณกำลังทดสอบแล้วหมุนขึ้นเมื่อคุณพบ DNS ของคุณแล้ว เซิร์ฟเวอร์ DNS บางตัวอาจแทนที่ TTL ด้วยค่าของตัวเองดังนั้นโปรดระวัง แต่ฉันคิดว่าที่แย่ที่สุดก็คือสองสามชั่วโมง
Adam Fabicki

โดยปกติจะใช้เวลาไม่เกินสองสามชั่วโมง แต่ฉันเคยเห็นคำเตือนว่าอาจใช้เวลาถึง 24 ชั่วโมงในการเผยแพร่ สามวันควรมีเวลาเหลือเฟือ
Ryan Kazinec

นี่คือบทช่วยสอนโดยละเอียดเพิ่มเติมเมื่อเทียบกับที่คุณพูดถึงในคำถามของคุณ: devcenter.heroku.com/articles/custom-domains
Ryan Kazinec

1
ขอบคุณสำหรับลิงค์ Ryan มันช่วยฉันแก้ปัญหานี้ได้จริงๆ!
Allegutta

0

ไปที่https://dnsimple.com/r/ecc41c23013629และเปิดบัญชี

พวกเขามีการตั้งค่าสำหรับ heroku เพียงคลิกเดียวและคุณสามารถตั้งค่า TTL ให้ต่ำสุดเพียงหนึ่งนาที จากนั้นในฝั่ง GoDaddy เพียงแค่เปลี่ยนเซิร์ฟเวอร์ dns จากเซิร์ฟเวอร์ go daddy เป็นเซิร์ฟเวอร์ dnsimple (อธิบายทั้งหมดในไซต์ dnsimple) ง่าย ๆ ;)

โดเมนของคุณยังคงโฮสต์โดย GoDaddy

GoDaddy ไม่ใช่สถานที่ที่จะจัดการคุณในความคิดเห็นที่ต่ำต้อยของฉัน


ฉันทำใน GoDaddy แต่ลองดูสิ! ขอบคุณ :)
Allegutta

ไม่มีเหตุผลที่จะต้องจ่ายเงินสำหรับ DNS เมื่อ Godaddy ทำงานได้ดีสำหรับกรณีการใช้งานพื้นฐาน
phillyslick

1
กรณีการใช้งานพื้นฐานมาก มี cloudflare เวอร์ชันฟรีอยู่เสมอหากคุณไม่ต้องการจ่ายค่าบริการ DNS ที่ดี)
Paul Williams

Cloudflare ทำให้ไซต์ช้า
TheVinspro

0

วิธีที่ง่ายที่สุดวิธีหนึ่งในการตั้งค่าโดเมนภายนอกด้วย Heroku คือการใช้ addon นี้: https://addons.heroku.com/zerigo_dns - คุณต้องชี้เซิร์ฟเวอร์ชื่อ DNS ไปที่

a.ns.zerigo.net
b.ns.zerigo.net
c.ns.zerigo.net
d.ns.zerigo.net
e.ns.zerigo.net

ฉันไม่มีส่วนเกี่ยวข้องกับ Zerigo DNS - เพียงแค่ผู้ใช้ที่มีความสุข ใช่ฟรี 50,000 คำค้นหาต่อเดือนและในราคา $ 20 / เดือนคุณจะได้รับคำถามไม่ จำกัด

หวังว่านี่จะช่วยได้


ณ วันที่ 31 มกราคม 2014 Zerigo จะไม่เสนอบัญชีฟรีอีกต่อไป
hoitomt

โอ้ dayum อาจใส่ DNS ของฉันบน cloudflare แทน
พอล

ฉันสามารถดูบัญชีฟรีได้แล้ว
JVK
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.