แพ็กเกจ Squid ของ OpenWrt อาจปฏิเสธการกำหนดค่า UCI ของตนก่อนที่จะเริ่มคำสั่ง Squid ด้วยซ้ำ ดังนั้น “validation failed” ทั่วไปจากสคริปต์ init จึงไม่ใช่เหตุผลที่เพียงพอจะแก้ไข squid.conf

อ่านข้อความระดับฟิลด์ที่อยู่ก่อนหน้านั้นและเทียบกับกฎการตรวจสอบของแพ็กเกจที่ติดตั้งไว้ ตัวอย่างเช่น การใช้งานตอนเริ่มทำงานประกาศให้ http_port เป็นชนิดพอร์ต ช่องว่างท้ายบรรทัดอาจทำให้การตรวจสอบนั้นล้มเหลวแม้ตัวเลขจะดูถูกต้อง ผลการตรวจสอบที่ล้มเหลวจะหยุด callback ก่อนการลงทะเบียนคำสั่ง

สำหรับส่วนที่ชื่อ squid จริง ๆ ให้ตรวจสอบค่าที่แคบลง:

uci get squid.squid.http_port

ใช้ชื่อส่วนที่มีอยู่ในการติดตั้ง แหล่งที่มาของแพ็กเกจโดยปกติคือ /etc/config/squid; หากไม่มีข้อความ ให้ตรวจสอบว่ามีอยู่และอ่านได้หรือไม่ ฉบับอื่นอาจแสดงฟิลด์ที่แตกต่างออกไป

หลังการตรวจสอบ UCI ให้ติดตามไฟล์ดั้งเดิมที่ส่งให้ Squid ตัวห่ออาจเลือกไฟล์ที่ระบุชัดเจนหรือสร้างขึ้นจากอินพุตที่รองรับ การแก้ไขไฟล์ที่ไม่ได้ใช้ไม่สามารถเปลี่ยนผลลัพธ์ที่สร้างขึ้นได้

ไวยากรณ์ดั้งเดิม ตัวช่วย สิทธิ์ และการตรวจสอบผู้รับฟังจะตามมาทีหลัง รายงานว่า “UCI ปฏิเสธ http_port” หรือ “Squid ปฏิเสธการกำหนดค่าดั้งเดิมที่เลือกไว้” พร้อมหลักฐาน การลบการกำหนดค่าของแพ็กเกจเพียงเพื่อระงับข้อผิดพลาดแรกอาจทำให้ตัวห่อไม่สามารถทำงานของตนได้

บทความที่เกี่ยวข้อง