“Ön denetleyici 100 yönlendirici eşleştirme yinelemelerine ulaştı” hatasının nedeni nedir?


14

Bir Magento geliştiricisi olarak bu sorunla yüzlerce kez karşılaştım, bazı modüllerin yüklenmediği, ne yönlendiricilerinin hataya neden olduğu bir yanlış yapılandırma sorunu olduğunu biliyorum. Çoğu zaman herhangi bir işlem yapılmadan çözülür, diğer zamanlarda önbelleği temizleyebilirsiniz

Magento çekirdek ön denetleyicisine bazı ekstra kod yerleştirerek hata ayıklamaya çalışırken, bu konuda birden çok yazı okudum app/code/core/Mage/Core/Controller/Varien/Front.php, ama sonunda bu sadece hangi modül yönlendiriciler eksik, neden yüklenmiyor değil gösterir. Her seferinde hangi URL'lerin hata verdiğini aramaya çalışıyorum, ancak bu kod izlemeyle aynı işe yaramaz bilgi. Her zaman aynı

Belki de modül çakışmalarından kaynaklanıyor? Belki de yanlış bir şey yapmak bazı cron görevidir? Belki eski Magento sürümlerinde bazı yanlış kodlar? Mesele şu ki, 1.7 sürümünden bu yana oluşmuyor (veya ortaya çıkarsa, tamamen düzensiz). Ben gibi ana akış bazı kod farklılıkları bulduk

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

Run () yönteminde app/code/core/Mage/Core/Model/App.phpveya

$this->_shouldSkipProcessModulesUpdates()

_initModules () yöntemini kontrol edin ...

Nedeni kesin olarak bulan birinin olması gerektiğine inanmak istiyorum. Herhangi bir ipucu?


1
Buna referans verdiniz mi? github.com/convenient/…
Tim Hallman

1
Bu makalenin posteri, geçersiz kılarak Mage_Core_Model_Configve zorlayarak sorununu $_useCache = false
çözebildi

1
Makalenin tamamını okuduktan sonra, sorumun doğru cevabı olarak yayınlamanız gerektiğini düşünüyorum, böylece diğer kullanıcılar okuyabilir. Teşekkürler
Raul Sanchez

Yanıtlar:


12

Görünüşe göre bir Magento yapılandırma hatası yaşıyorsunuz.

Burada çözüm ile mükemmel bir yazı var .

Bu makalede yazar, yapılandırmayı yeniden oluştururken geçersiz kılma Mage_Core_Model_Configve zorlama ile hatayı $_useCache = falsedüzeltebildi.


4
Lanet olsun! Asla bu yazı için temsilciyi elde edemem, diğer insanlar her zaman önce ona
Luke Rodgers

3
Çok güzel bir yazı @LukeRodgers!
Tim Hallman

5
Sadece yorum yapmak istediğiniz ve Magento SUPEE-4755 ile soruna yönelik düzeltme olarak bu kabul söylemek github.com/convenient/...
Luke Rodgers

2
Ayrıca bir yama daha ekledim. O kadar güzel değil, ama burada tartışıldı. github.com/convenient/…
Luke Rodgers

Magento 2 CE Sürüm 2.1.0'da bu sorunla karşılaşıyorum. Eski sorun olduğu için düzeltilmesi gerekir mi?
Ankit Shah

6

Magento yapılandırma ayarlarını Varsayılan Yönlendirme Yok URL'sini kontrol edin .

Sistem> Konfigürasyonlar> Web> Varsayılan Sayfalar
. Varsayılan değer olarak ayarlanmalıdır cms / index / noRoute . Burada belirli bir mağaza değerinin de varsayılan değerinin üzerine yazılıp yazılmadığını kontrol edin. Magento, düzgün ayarlanmadığı takdirde 100 yineleme sınırına ulaşana kadar sonsuz bir döngüye girebilir.

Eğer kullanırsanız Magerun , bu komutu çalıştırın.

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

Burada çözümü buldum, benim durumumda sorun buydu. Diğer seçenekler için URL'yi kontrol edebilirsiniz.

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


./N98-magerun.phar config: i-route'u çalıştırırsam "no-route" için bir yapılandırma değeri bulamadım ve config girdisi bile yok, cevabınızdan emin misiniz?
Siyah

1
@Siyah yanlış yapıyorsun. konsol get yöntemi yolu gerektirir - bu nedenle komutunuz - \ n "n98-magerun.phar config: get cms / index / noRoute" \ n Lütfen "n98-magerun.phar config: get - komutunu çalıştırarak yardım seçeneğini kontrol edin. yardım "
Sandipan S
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.