सफल पैच के बाद त्रुटि SUPEE-5994: वर्ग 'Mage_Install_Controller_Router_Install' नहीं मिला


36

मैंने सफलतापूर्वक SUPEE-5994 पैच स्थापित किया है:

[root@x]# sh PATCH_SUPEE-5994_EE_1.14.1.0_v1-2015-05-14-05-05-02.sh
Checking if patch can be applied/reverted successfully...
Patch was applied/reverted successfully.

लेकिन अब, मेरे सभी वेबपेज खाली हैं।

Httpd त्रुटि लॉग:

[त्रुटि] [क्लाइंट x] PHP घातक त्रुटि: कक्षा In Mage_Install_Controller_Router_Install ’लाइन में /var/www/x/public_html/app/code/core/Mage/Cont/Controller/Varien/Front.php पर नहीं मिली।

मैंने कोशिश की है:

  • / Var / कैश साफ़ करें
  • चामोड / चाउनेट को रीसेट करें
  • Httpd सेवा को पुनरारंभ करें

लेकिन कुछ भी काम नहीं दिखता।

किसी को भी एक ही मुद्दा है?

संपादित करें: फ्रंट.php फ़ाइल:

 Varien_Profiler::start('mage::app::init_front_controller::collect_routers');
    foreach ($routersInfo as $routerCode => $routerInfo) {
        if (isset($routerInfo['disabled']) && $routerInfo['disabled']) {
            continue;
        }
        if (isset($routerInfo['class'])) {
   // LINE 138 HERE
            $router = new $routerInfo['class'];
            if (isset($routerInfo['area'])) {
                $router->collectRoutes($routerInfo['area'], $routerCode);
            }
            $this->addRouter($routerCode, $router);
        }
    }
    Varien_Profiler::stop('mage::app::init_front_controller::collect_routers');

जवाबों:


38

क्या आपने संकलित किया है और संकलित किया है?

कंसोल / ssh के माध्यम से आप उपयोग कर सकते हैं

$ php -f shell/compiler.php -- disable

$ php -f shell/compiler.php -- clear

$ php -f shell/compiler.php -- compile

$ php -f shell/compiler.php -- enable

चौथी पंक्ति की आवश्यकता हो सकती है ... निश्चित नहीं।

यह आपके द्वारा दिखाए गए कोड से पहले आने वाली लाइन के साथ एक समस्या हो सकती है

$routersInfo = Mage::app()->getStore()->getConfig(self::XML_STORE_ROUTERS_PATH);

नोट: मुझे एक समान समस्या थी जहां व्यवस्थापक रिक्त था, हालांकि यह एक मॉड्यूल में एक फ़ाइल थी जो कोर फ़ाइलों में से एक को ओवरराइड कर रही थी - लेकिन यह आपके मामले में नहीं है। बस अगर दूसरे इस मुद्दे को देखते हैं।


वाह, तुम आदमी हो! बहुत धन्यवाद। बस तीसरी पंक्ति को संपादित करें, यह php -f खोल / compiler.php - मेरे लिए संकलन था। यह काम करता हैं !
— ०५ बजे

1
ठंडा। पिछले हफ्ते मेट को अपडेट करने में असली परेशानी थी :) मदद के लिए खुशी
— जॉन हॉलैंड

1
अच्छी जगह अपडेट किया गया।
— जॉन हॉलैंड

यही कारण है कि क्या upvotes के लिए, जॉन कर रहे हैं
— डेविड विल्किंस

:) हाँ, मैं वास्तव में जानता हूँ, डेविड। लोगों को अचार से बाहर निकलते हुए देखना अच्छा लगता है।
— जॉन हॉलैंड

14

यदि आपने संकलक को अक्षम कर दिया है और कैश को साफ़ कर दिया है और आप अभी भी त्रुटि में हैं

Class 'Mage_Install_Controller_Router_Install' not found

यह देखने के लिए जांचें कि क्या फ़ाइल app/code/core/Mage/Install/Controller/Router/Install.phpमौजूद है।

जब आप पैच को चलाते हैं, तो निर्देशिका Routerमौजूद नहीं थी app/code/core/Mage/Install/Controllerऔर इसलिए Install.phpफ़ाइल में अन्यथा बताए जाने के बावजूद applied.patches.listफ़ाइल नहीं बनी। इसका मतलब है कि आप एक कक्षा को याद कर रहे हैं और आपको संदेश प्राप्त होता है:

Fatal error: Class 'Mage_Install_Controller_Router_Install' not found

applied.patches.listकथित रूप से सफल पैच इंस्टॉलेशन के लिए अंश जो Install.php फ़ाइल बनाने में विफल रहता है:

patching file app/code/core/Mage/Install/Controller/Router/Install.php
patching file app/code/core/Mage/Install/etc/config.xml

पैच app/code/core/Mage/Install/etc/config.xmlफ़ाइल के लिए निम्न जोड़ बनाता है जो अनुपलब्ध फ़ाइल को संदर्भित करता है:

 <default>
     <web>
         <routers>
             <install>
                 <area>frontend</area>
                 <class>Mage_Install_Controller_Router_Install</class>
             </install>
         </routers>
     </web>
 </default>
 <stores>
     <default>
         <web>
             <routers>
                 <install>
                     <area>frontend</area>
                     <class>Mage_Install_Controller_Router_Install</class>
                 </install>
             </routers>
         </web>
     </default>
 </stores>

क्या याद आ रही फ़ाइल का नमूना app/code/core/Mage/Install/Controller/Router/Install.phpमाना जाता है को रोकने के लिए।

<?php
/**
 * Magento Enterprise Edition
 *
 * NOTICE OF LICENSE
 *
 * This source file is subject to the Magento Enterprise Edition End User License Agreement
 * that is bundled with this package in the file LICENSE_EE.txt.
 * It is also available through the world-wide-web at this URL:
 * http://www.magento.com/license/enterprise-edition
 * If you did not receive a copy of the license and are unable to
 * obtain it through the world-wide-web, please send an email
 * to license@magento.com so we can send you a copy immediately.
 *
 * DISCLAIMER
 *
 * Do not edit or add to this file if you wish to upgrade Magento to newer
 * versions in the future. If you wish to customize Magento for your
 * needs please refer to http://www.magento.com for more information.
 *
 * @category    Mage
 * @package     Mage_Install
 * @copyright Copyright (c) 2006-2014 X.commerce, Inc. (http://www.magento.com)
 * @license http://www.magento.com/license/enterprise-edition
 */

class Mage_Install_Controller_Router_Install extends Mage_Core_Controller_Varien_Router_Standard
{
    /**
     * Check if current controller instance is allowed in current router.
     * 
     * @param Mage_Core_Controller_Varien_Action $controllerInstance
     * @return boolean
     */
    protected function _validateControllerInstance($controllerInstance)
    {
        return $controllerInstance instanceof Mage_Install_Controller_Action;
    }
}

1
फासको लैब्स के अलावा, मैंने लोगों को इस परेशानी के बारे में सुना है।
— जॉन हॉलैंड

1
बताती है कि वास्तव में हमारे मामले में क्या हुआ और ऊपर ने इस मुद्दे को सुलझाया। धन्यवाद
— Flipmedia
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.