nginx ล้มเหลวในการแก้ไขชื่อต้นน้ำในการโหลดซ้ำแม้ว่าพวกเขาจะแก้ไขได้โดยระบบปฏิบัติการ


9

เมื่อโหลดการกำหนดค่าใหม่ (โดยเฉพาะสำหรับ proxy_pass) - บางครั้งสิ่งนี้จะเห็น: nginx: [ฉุกเฉิน] ไม่พบโฮสต์ในอัปสตรีม

อย่างไรก็ตาม - ชื่อของเซิร์ฟเวอร์ upstream จะแก้ไขได้ในระบบปฏิบัติการ (linux) - เฉพาะ nginx ที่ดูเหมือนจะมีปัญหานี้

สิ่งนี้ดูเหมือนจะเป็นการถดถอยครั้งล่าสุดเนื่องจากดูเหมือนว่าจะไม่เกิดขึ้นก่อนหน้าเวอร์ชัน 1.0.10

มีใครสังเกตเห็นเมื่อเร็ว ๆ นี้?

พยายาม จำกัด สถานที่ให้แคบลงเพื่อค้นหา

คำตอบ:


6

Nginx แคช DNS ภายใน 5 นาที (ไม่แน่ใจว่านี่สามารถกำหนดค่าได้ในรุ่นที่ใหม่กว่า) บางทีโปรแกรมแก้ไขของคุณล้มเหลวด้วยเหตุผลบางอย่าง Nginx จะแคชผลลัพธ์นี้

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

ลองเพิ่ม:

  options single-request

ถึง /etc/resolv.conf

สิ่งนี้ทำให้การค้นหา IPv6 / v4 ถูกดำเนินการตามลำดับ


ขอบคุณสำหรับคำตอบ. ปรากฏว่านี่เป็นข้อผิดพลาดที่ทำให้ชื่อโฮสต์ในไฟล์ปรับแต่งนั้นยุ่ง อุ่ย แต่คำตอบของคุณมีประโยชน์จริง ๆ อยู่แล้ว - ดังนั้นฉันจะทำเครื่องหมายว่าเป็นคำตอบที่ถูกต้อง - เพราะมันจะทำให้เกิดปัญหา DNS ได้อย่างแน่นอน (ระเบิดด้วยคำขอ)
Michael Neale

2
ฉันมีปัญหาเดียวกัน - ไม่ว่าสิ่งที่คุณทำใน config ไฟล์ที่จะแก้ไขปัญหานี้ (ขอบคุณล่วงหน้า)
Zabs

ตอนนี้คุณสามารถเพิ่มvalue=30sตัวเลือกไปที่resolverเพื่อกำหนดระยะเวลาที่ที่อยู่ IP ที่ได้รับการแก้ไขจะถูกเก็บไว้ในresolverแคชของ
Alexis Wilke
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.