Вопрос по magento – Раздел реестра "_singleton / core / resource" уже существует в magento

2

Я сталкиваюсь с этой проблемой на своем сайте ключ реестра Mage & quot; _singleton / core / resource & quot; уже существует, пожалуйста, помогите мне, как решить эту ошибку.

Я проверил папку и разрешение файла
изменил lib / Zend / Cache / Backend / File.php на «a_cache_dir»; = & GT; null, в «cache_dir» = & GT; & APOS; TMP & APOS ;, Изменения в index.php прокомментировали строку

if (isset($_SERVER['MAGE_IS_DEVELOPER_MODE'])) {
    Mage::setIsDeveloperMode(true);
}

После внесения этих изменений он работал хорошо, и сегодня он снова останавливается и отображает ту же проблему

Я пробовал каждый путь, но не добился успеха.

Ваш Ответ

5   ответов
2

Поместите этот файл в корневую папку Magento, т.е.clear-cache.php и выполнить его через терминал.

php /home/magento/www/clear-cache.php

Это очистит весь кэш и перестроит все индексы.

Исправлена проблема, описанная в Magento Enterprise 1.11.2, когда я не мог загрузить какую-либо страницу или войти в администратор и удалить/var/cache не решил проблему.

<?php
// Include Magento
require_once dirname(__FILE__).'/app/Mage.php';
Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);
// Set user admin session
$userModel = Mage::getModel('admin/user');
$userModel->setUserId(0);
Mage::getSingleton('admin/session')->setUser($userModel);
// Call Magento clean cache action
Mage::app()->cleanCache();
// Enable all cache types
$enable = array();
foreach(Mage::helper('core')->getCacheTypes() as $type => $label){
    $enable[$type] = 1;
}
Mage::app()->saveUseCache($enable);
// Refresh cache's
echo 'Refreshing cache...';
try {
    Mage::getSingleton('catalog/url')->refreshRewrites();
    echo 'Catalog Rewrites was refreshed successfully';
} catch ( Exception $e ) {
    echo 'Error in Catalog Rewrites: '.$e->getMessage();
}
// This one caused an error for me - you can try enable it
/*try {
    Mage::getSingleton('catalog/index')->rebuild();
    echo 'Catalog Index was rebuilt successfully';
} catch ( Exception $e ) {
    echo 'Error in Catalog Index: '.$e->getMessage();
}*/
try {
    $flag = Mage::getModel('catalogindex/catalog_index_flag')->loadSelf();
    if ( $flag->getState() == Mage_CatalogIndex_Model_Catalog_Index_Flag::STATE_RUNNING ) {
        $kill = Mage::getModel('catalogindex/catalog_index_kill_flag')->loadSelf();
        $kill->setFlagData($flag->getFlagData())->save();
    }
    $flag->setState(Mage_CatalogIndex_Model_Catalog_Index_Flag::STATE_QUEUED)->save();
    Mage::getSingleton('catalogindex/indexer')->plainReindex();
    echo 'Layered Navigation Indices was refreshed successfully';
} catch ( Exception $e ) {
    echo 'Error in Layered Navigation Indices: '.$e->getMessage();
}
try {
    Mage::getModel('catalog/product_image')->clearCache();
    echo 'Image cache was cleared successfully';
} catch ( Exception $e ) {
    echo 'Error in Image cache: '.$e->getMessage();
}
try {
    Mage::getSingleton('catalogsearch/fulltext')->rebuildIndex();
    echo 'Search Index was rebuilded successfully';
} catch ( Exception $e ) {
    echo 'Error in Search Index: '.$e->getMessage();
}
try {
    Mage::getSingleton('cataloginventory/stock_status')->rebuild();
    echo 'CatalogInventory Stock Status was rebuilded successfully';
} catch ( Exception $e ) {
    echo 'Error in CatalogInventory Stock Status: '.$e->getMessage();
}
try {
    Mage::getResourceModel('catalog/category_flat')->rebuild();
    echo 'Flat Catalog Category was rebuilt successfully';
} catch ( Exception $e ) {
    echo 'Error in Flat Catalog Category: '.$e->getMessage();
}
try {
    Mage::getResourceModel('catalog/product_flat_indexer')->rebuild();
    echo 'Flat Catalog Product was rebuilt successfully';
} catch ( Exception $e ) {
    echo 'Error in Flat Catalog Product: '.$e->getMessage();
}
echo 'Cache cleared';
// Rebuild indexes
echo 'Rebuilding indexes';
for ($i = 1; $i <= 9; $i++) {
    $process = Mage::getModel('index/process')->load($i);
    try {
        $process->reindexAll();
    } catch ( Exception $e ) {
        echo 'Error rebuilding index '.$i.': '.$e->getMessage();
    }
}
echo 'Indexes rebuilt';
echo 'Finished!';
2

Вindex.php поставить это сразу послеrequire_once $mageFilename;

$app = Mage::app();
$cache = $app->getCache();
$cache->clean();

Обновите сломанную веб-страницу, затем удалите код.

Это работает, пока я держу код в index.php. Есть ли другое решение?
@MCNab Мое удовольствие - в прошлом месяце я тоже испытывал горе, поэтому я решил исправить это на тот случай, если кому-то (включая меня!) Оно понадобится снова.
Спасибо за это, с радостью дарим бонус. Это мне очень помогло вчера, я не знаю почемуrm -rf var/cache/* не очищал кеш должным образом, но из моих ушей в течение нескольких минут шел дым, когда я пытался все, что мог придумать, чтобы вернуть сайт в оперативный режим. Это разобрались. Ура!
0

Я вижу, что это довольно старая тема, но сегодня я столкнулся с подобной проблемой. У меня есть два наблюдателя на catalog_product_prepare_save и catalog_product_save_after, оба запускаются в одном выполнении php.

Оказывается, мы использовали методы из файла ProductObserver.php (класс XXXX_Persona_Model_ProductObserver) в качестве слушателей. Он хорошо работал на Windows и Mac, но не работал с аналогичным сообщением на производстве (Linux). Вы догадались - Linux чувствителен к регистру. Исправление имени файла в Productobserver.php (и имя класса соответственно) решило проблему для нас.

Для пользовательских модулей и реестра уже существует ключ = & gt;stackoverflow.com/questions/19142720/…
3

Очень важно очистить кэш компилятора и после этого включить его в бэкэнде Magento.

Clear the cache

SSH: найти ./var/cache -type f -delete FTP: mrm -r ./var/cache; mkdir ./var/cache

Disable/Clear Magento compilation

SSH: php -f shell / compiler.php - отключить php -f shell / compiler.php - очистить FTP: Mv ./include ./include.unused

8

Я сталкивался с этой проблемой раньше, и это было из-за кеша. если вы все еще можете получить доступ к панели администрирования Magento, перейдите и очистите свое хранилище кэша (две основные кнопки в верхней части системы -> страница управления кэшем).

Вы также можете обратиться кэтот блог для получения дополнительной помощи по проблеме кеша.

Похожие вопросы