2010-08-02 2 views
6

Я импортировал 6K категорий и 16K продуктов в magento, используя специальный профиль импорта. Когда я пытаюсь переиндексации, все работает, за исключением «URL-адреса каталога URL-адресов», которые продолжают показывать PROCESSING, но никогда не завершаются.reindex URL-адрес каталога Rewrites in magento никогда не заканчивается

Файлы журнала и исключений ничего не показывают.

Есть ли что-то, что я могу сделать, чтобы заставить индекс работать? Могу ли я просто игнорировать этот индекс и не использовать его? (Я не знаю, что он делает).

Благодаря

ответ

5

Вы можете игнорировать этот показатель, если вам не нравятся симпатичные, дружественные поисковые системы. Продукты будут по-прежнему отображаться в каталоге, но будут иметь URL-адрес по умолчанию «Zend Framework» (/ catalog/product/view/id/123)

В моем магазине есть 150 000+ SKU в двух вариантах магазина. В моей среде разработки потребовалось почти две недели.

Лучший способ определить, как быстро он работает, - это посмотреть таблицу базы данных core_url_rewrite. Похоже, что процесс начинается с идентификатора продукта 1 в идентификаторе 1 магазина и пытается убедиться, что все его URL-адреса существуют и создают те, которые еще не существуют.

Для меня причина, по которой потребовалось так много времени, заключалась в том, что она должна была пройти через весь мой каталог дважды, чтобы сделать все URL-адреса. Одна вещь, которую я заметил, это то, что этот процесс создает массу ненужных URL-адресов. В нашем магазине 90% наших продуктов относится к настраиваемому продукту, поэтому их видимость установлена ​​на «Не видно индивидуально», поэтому им никогда не понадобится URL. Этот индекс все равно создает эти URL-адреса.

Надеюсь, это прояснит, как работает этот URL. Я бы следил за этой таблицей базы данных, чтобы вы знали, как далеко продвинулся процесс. Я бы также серьезно подумал о запуске процесса переиндекса для командной строки. Я включил ссылку, которая объясняет, как это сделать (раскрытие: это из моего блога)

http://overlycaffeinated.com/2011/02/when-reindexing-in-magento-fails-use-the-command-line/

+0

Отличное сообщение в блоге. 18 000+ продуктов в моем магазине. Индекс каталогов URL-адресов был запущен в течение ночи и еще несколько. Использовал ваш метод в оболочке, и он закончил менее чем за 5 минут. Genius! – James

+1

Начинает с использования CLI для запуска индексатора: вы должны убедиться, что вы используете правильный двоичный код PHP как правильный пользователь. Например, на сервере Bitnami Magento вам нужно запустить 'sudo -u daemon/opt/bitnami/php/bin/php ./shell/indexer.php --reindex catalog_url'. Это будет отличаться для каждого сервера, но убедитесь, что вы не просто используете 'php', не учитывая, какой пользователь вы вошли в систему. –

0

Вы должны каталог URL переписывает, чтобы сделать свой каталог работать должным образом. Как долго вы его запускаете? Там должно быть записано очень большое количество данных ...

Если вы не можете сделать это с программным обеспечением, возможно, вы сможете вручную вставить данные в таблицу и заставить индекс чувствовать себя обновленным? Предостережение emptor, я не пробовал это.

+0

Я жду больше часа, пока не получаю сообщение об ошибке: Произошла ошибка при сохранении перезаписи URL. Я думаю это от: app/code/core/Mage/Каталог/Модель/Ресурс/Eav/Mysql4/Url.php – pablo

3

Моя собственная попытка переиндексации URL-адресов переписывалась с 10 000 продуктами, и мне потребовался час и половина, чтобы закончить.

Эта ссылка поможет вам сделать это из командной строки, что предпочтительнее, чем делать это с той же панели администратора Magento.

http://www.yireo.com/tutorials/magento/magento-administration/340-magento-14-cronjobs

Убедитесь, что вы читали часть о пропуская некоторую базовую конфигурацию, сталкиваясь пределы памяти, это один я обычно использую.

+0

Эта ссылка перенаправляется на страницу индекса веб-сайта. –

0

Я сталкивался с такой же проблемой, сервер, я бегу это на это сервер FreeBSD. С помощью примера вышеприведенного кода мне удалось решить проблему, чтобы купить покупку, выполнив следующую команду в оболочке.

/USR/местные/бен/PHP /usr/local/www/magento/shell/indexer.php --reindex catalog_url

Он работает очень быстро и решить мою проблему. Затем я создал cron для запуска каждые 6 часов на моем сервере.

0

Вы можете переиндексации используя команду строки это уменьшит 75% нагрузки и ваш Magento панели администратора работает в обычном режиме во время переиндексации.

Смежные вопросы