Magento: какой файл обнаруживает local.xml? - PullRequest
0 голосов
/ 13 марта 2012

Я переношу Magento с одного сервера на другой. Я создал local.xml файл, но Magento продолжает перенаправлять на страницу установки.

У меня также возникают некоторые проблемы с владельцем / группой из-за проверки SVN, поэтому я подозреваю, что Magento не может прочитать local.xml.

Вопрос: Какой файл / часть сценария выполняет обнаружение local.xml, поэтому я могу смоделировать, доступна ли из этой же среды local.xml?

Спасибо

Ответы [ 2 ]

2 голосов
/ 14 марта 2012

Ключевым моментом здесь является правильное решение ваших проблем с разрешениями. Все файлы должны принадлежать тому же пользователю, с которым запускается экземпляр PHP, как с rwx.

Вы можете временно проверить по:

chmod -R 777 /path/to/my/magento/store/*

Также не забудьте очистить следующие каталоги при переносе магазина:

./var/cache/*
./var/session/*

Чтобы ответить на ваш вопрос, local.xml читается в ./app/Mage.php вокруг строки +640 в следующей функции:

public static function isInstalled($options = array())
{
    if (self::$_isInstalled === null) {
        self::setRoot();

        if (is_string($options)) {
            $options = array('etc_dir' => $options);
        }
        $etcDir = 'etc';
        if (!empty($options['etc_dir'])) {
            $etcDir = $options['etc_dir'];
        }
        $localConfigFile = self::getRoot() . DS . $etcDir . DS . 'local.xml';

        self::$_isInstalled = false;

        if (is_readable($localConfigFile)) {
            $localConfig = simplexml_load_file($localConfigFile);
            date_default_timezone_set('UTC');
            if (($date = $localConfig->global->install->date) && strtotime($date)) {
                self::$_isInstalled = true;
            }
        }
    }
    return self::$_isInstalled;
}
0 голосов
/ 13 марта 2012

Вам не нужно создавать отдельный файл "local.xml" для нового сервера. Скопируйте старый «local.xml» на новый веб-сервер и отредактируйте этот файл, чтобы изменить следующие переменные на значения нового веб-сервера: -

  • host // Новое имя хоста базы данных, например "localhost" или некоторые другие значения, предоставленные вам для базы данных нового веб-сервера
  • username // Новое имя пользователя базы данных
  • password // Новый пароль базы данных
  • dbname // Новое имя базы данных

После изменения значений в файле "local.xml" для вышеупомянутых узлов сохраните его.

Также удалите полную папку «var» и начните использовать новый веб-сервер для перенесенного Magento.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...