ฉันสามารถโฮสต์แอป react ของฉันเพื่อใช้ react-router-dom กับ Netlify ได้ฟรีหรือไม่

Jan 12 2021

โครงการของฉัน:

  • ตอบสนอง (ฉันใช้create-react-appไลบรารี)
    • ใช้react-router-domใช้BrowserRouter, RouteและSwitchการนำเข้า สิ่งนี้ช่วยให้ฉันไปที่ URL ที่แตกต่างกัน: ตัวอย่างเช่นเมื่อฉันเรียกใช้แอพของฉันบน localhost localhost3000ก็คือบ้าน เป็นส่วนหนึ่งของการทำงานของ app ของฉันคือการสุ่มสร้าง URL - เช่น: หรือlocalhost3000/123456localhost3000/654321
  • ทำการเปลี่ยนแปลงฐานข้อมูลใน Realtime Database ของ Firebase และใช้ Auth ของ Firebase

สิ่งที่ฉันต้องการ:

  • ฟรี: เนื่องจากแอปนี้เป็นผลงานฉันคิดว่าทั้งหมดที่ฉันต้องการคือชื่อโดเมนใด ๆ ที่อนุญาตให้ฉันใช้ประโยชน์react-router-domได้ ตัวอย่างเช่นwww.anyname.comคือบ้านและwww.anyname/123456.comเป็นหนึ่งในเส้นทางของฉัน

  • ไม่ฟรี: หากไม่มีความสามารถในการบรรลุสิ่งที่ฉันต้องการได้ฟรีฉันยินดีที่จะซื้อชื่อโดเมนและขอขอบคุณสำหรับคำแนะนำว่าฉันจะดำเนินการนี้ได้อย่างไร

สิ่งที่ฉันได้ค้นคว้า:

  • Netlify ได้รับการแนะนำให้ฉัน ฉันรู้ว่ามันให้ความสามารถในการแก้ไขส่วนหนึ่งของชื่อโดเมน แต่ฉันไม่รู้ว่ามันจะแสดง 'เส้นทาง' ของฉันหรือไม่เช่น ( nameofmychoosing.netlify.appคือบ้านและnameofmychoosing/123456.netlify.appเป็นหนึ่งในเส้นทางของฉัน - มันจะใช้ได้ไหม)

ปล. ถ้าที่นี่ไม่ใช่ที่ที่เหมาะสมในการโพสต์คำถามแนะนำให้ฉันไปที่ฟอรัมที่ถูกต้องจะได้รับการชื่นชมมาก


แก้ไข: เพิ่งค้นพบสิ่งนี้และสิ่งนี้ซึ่งบอกว่าฉันต้องทำการปรับเปลี่ยนเล็กน้อยเพื่อให้ netlify ใช้งานreact-router-domได้

คำตอบ

1 Deadron Jan 12 2021 at 01:04

คุณสามารถเปลี่ยน url ของหน้าเว็บที่คุณใช้งานโค้ดได้อย่างอิสระ ผลที่ตามมาเพียงอย่างเดียวคือพฤติกรรมของ URL สัมพัทธ์และสิ่งที่จะเกิดขึ้นเมื่อโหลดเพจซ้ำ ในสภาพแวดล้อมการโฮสต์ด้วยตนเองส่วนใหญ่คุณควรปรับเปลี่ยนทุกอย่างที่เกิดขึ้นหลังจากโดเมนได้ เช่นhttps://www.example.com/yourrouteshere หรือยังใช้ https://www.example.com/page#Yourrouteshere. สิ่งที่ควรทราบคือหากผู้ใช้รีเฟรชเพจแบ็กเอนด์ของคุณยังคงต้องตอบสนองที่เหมาะสม ซึ่งอาจหมายความว่าแบ็กเอนด์จะส่งคืนสิ่งเดียวกันเสมอโดยไม่คำนึงถึงเส้นทาง URL หรืออาจหมายถึงการให้บริการบางอย่างที่แตกต่างกันขึ้นอยู่กับกรณีการใช้งานของคุณ

คุณไม่ควรแก้ไขโดเมนเองเว้นแต่คุณจะมีการตั้งค่าแปลก ๆ ที่อาศัยการมีชื่อโฮสต์หลายชื่อสำหรับกรณีการใช้งานแปลก ๆ

เมื่อคุณมีแอปพลิเคชันที่ใช้งานอยู่คุณอาจพิจารณาตั้งค่าระเบียน DNS ด้วยแอตทริบิวต์ CNAME เพื่อส่งต่อไปยังโฮสต์ที่มีอยู่

tonitone120 Jan 13 2021 at 00:14

ฉันสามารถที่จะมี Netlify โฮสต์ของฉันตอบสนอง app สำหรับฟรีและทำให้การใช้งานreact-router-domโดย i) การสร้างไฟล์ที่เรียกว่า_redirectsในโฟลเดอร์ที่.htmlชีวิตและ ii) ใส่ใน:_redirects/* /index.html 200

มีอยู่แล้วเป็นคำถามที่ SO และคำตอบที่คล้ายกันที่นี่ที่ฉันต้องการที่จะเชื่อมโยงไปยังคำถามของฉัน ฉันไม่รู้ว่าจะทำยังไงถ้าใครสามารถแสดงให้ฉันเห็นว่าจะได้รับการชื่นชม