อะไรคือสาเหตุของข้อผิดพลาด“ ตัวควบคุมด้านหน้าถึง 100 เราเตอร์ที่ตรงกับการวนซ้ำ” ข้อผิดพลาด?


14

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

ฉันได้อ่านหลาย ๆ โพสต์เกี่ยวกับเรื่องนี้พยายามที่จะแก้ปัญหาการวางรหัสพิเศษบางอย่างใน Magento core Front controller app/code/core/Mage/Core/Controller/Varien/Front.phpแต่ในตอนท้ายนี้จะแสดงเฉพาะโมดูลเราเตอร์ที่หายไปไม่ใช่สาเหตุที่พวกเขาไม่ได้โหลด ทุกครั้งที่มันเกิดขึ้นฉันพยายามที่จะดูว่า URL ใดที่ทำให้เกิดข้อผิดพลาด แต่นี่เป็นข้อมูลที่ไร้ประโยชน์เช่นเดียวกับการติดตามโค้ด มันเหมือนกันเสมอ

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

Mage::register('application_params', $params);

กำลังใช้วิธีเรียกใช้ () ของapp/code/core/Mage/Core/Model/App.phpหรือ

$this->_shouldSkipProcessModulesUpdates()

เช็คอินวิธี_initModules () ...

ฉันต้องการที่จะเชื่อว่าควรมีใครบางคนที่ได้พบสาเหตุที่ชัดเจน เคล็ดลับใด ๆ


1
คุณเคยอ้างถึงสิ่งนี้หรือไม่? github.com/convenient/…
Tim Hallman

1
โปสเตอร์ของบทความนั้นสามารถแก้ไขปัญหาของพวกเขาได้โดยการเอาชนะMage_Core_Model_Configและบังคับใช้$_useCache = false
Tim Hallman

1
หลังจากอ่านบทความทั้งหมดฉันคิดว่าคุณควรโพสต์สิ่งนั้นเป็นคำตอบที่ถูกต้องสำหรับคำถามของฉันเพื่อให้ผู้ใช้รายอื่นสามารถอ่านได้ ขอบคุณ
Raul Sanchez

คำตอบ:


12

ดูเหมือนว่าคุณกำลังประสบปัญหาข้อผิดพลาดในการตั้งค่า Magento

มีการเขียนขึ้นดีกับการแก้ปัญหาคือที่นี่

ในบทความนั้นผู้เขียนสามารถแก้ไขข้อผิดพลาดโดยการแทนที่Mage_Core_Model_Configและบังคับใช้$_useCache = falseเมื่อสร้างการกำหนดค่าใหม่


4
Damnit! ฉันไม่เคยได้รับที่จะเก็บเกี่ยวตัวแทนสำหรับบทความที่คนอื่นมักจะเชื่อมโยงกับมันเป็นครั้งแรก;)
ลุคร็อดเจอร์ส

3
เขียนดีมาก @LukeRodgers!
Tim Hallman

5
ฉันต้องการแสดงความคิดเห็นและพูดว่า Magento ยอมรับสิ่งนี้เพื่อแก้ไขปัญหากับ SUPEE-4755 github.com/convenient/ …
ลุคร็อดเจอร์ส

2
ฉันยังเพิ่มแพตช์อื่น ไม่ค่อยดีเท่าไหร่ แต่พูดถึงที่นี่ github.com/convenient/…
Luke Rodgers

ฉันกำลังเผชิญกับปัญหานี้ใน Magento 2 CE เวอร์ชัน 2.1.0 ควรแก้ไขให้ถูกต้องเพราะเป็นปัญหาเก่าหรือไม่
Ankit Shah

6

ตรวจสอบการตั้งค่าการกำหนดค่า Magento ไม่มี URL เส้นทางเริ่มต้นที่

ระบบ> การกำหนดค่า> เว็บ> หน้าเริ่มต้น
. มันควรจะตั้งค่าเริ่มต้นซ.ม. / index / noRoute ตรวจสอบค่าร้านค้าโดยเฉพาะเช่นกันว่าค่าเริ่มต้นถูกเขียนทับที่นี่หรือไม่ วีโอไอพีสามารถเข้าสู่วงวนไม่สิ้นสุดจนกว่าจะถึงขีด จำกัด 100 การวนซ้ำหากตั้งค่าไม่ถูกต้อง

หากคุณใช้Magerunให้รันคำสั่งนี้

magerun config:set cms/index/noRoute no-route

ฉันพบวิธีแก้ไขที่นี่แล้วนี่เป็นปัญหาในกรณีของฉัน คุณสามารถตรวจสอบ URL สำหรับตัวเลือกอื่น ๆ

https://merchantprotocol.com/506/solved-front-controller-reached-100-router-match-iterations/


ถ้าฉันเรียกใช้. / n98-magerun.phar config: รับ no-route ฉันจะไม่สามารถหาค่า config สำหรับ "no-route" และรายการ config ยังไม่มีอยู่คุณแน่ใจหรือไม่กับคำตอบของคุณ?
Black

1
@ ดำที่คุณทำผิด วิธีการรับคอนโซลต้องการเส้นทาง - ดังนั้นคำสั่งของคุณควรเป็น - \ n "n98-magerun.phar config: รับ cms / index / noRoute" \ n กรุณาตรวจสอบตัวเลือกความช่วยเหลือโดยการเรียกใช้ "n98-magerun.phar config: get - ช่วย "
Sandipan S
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.