URL администратора Magento не работает: 404 после изменения не могу вернуться - PullRequest
12 голосов
/ 26 августа 2011

Я просматривал все темы, чтобы найти что-то похожее на мой случай. Я нашел несколько похожих случаев, но ни одно из решений не решило мою проблему.

Я изменил через админку URL админки. После сохранения изменений magento сразу перевел меня на ошибку 404. Новый URL, который я определил для администратора, был "gestion". Переходя на mydomain.com/gestion, выдает ошибку 404.

Поэтому я решил вернуться, удалив новые записи, которые были созданы в таблице magento core_config_data и затем вручную очищены из каталога кэша.

Но после этого у меня та же ошибка: страница 404 не найдена. Я пробовал это и это . Но все тот же.

Странно то, что я удалил все, что связано с "gestion" в базе данных, а также очистил каталог кеша. Но когда я захожу на mydomain.com/admin, magento перенаправляет меня на mydomain.com/gestion (с ошибкой 404).

Почему magento перенаправляет меня на "gestion", когда я удалил все, что с этим связано? Куда еще мне обратиться, чтобы решить эту проблему?

P.D. Magento 1.5.1

Ответы [ 8 ]

18 голосов
/ 28 марта 2015

ОТВЕТ: У меня была такая же проблема, и ни один из предыдущих ответов не помог мне.Я использую Magento версии 1.9.

Вот что я сделал, чтобы решить эту проблему ...

  1. Перейдите на свою cpanel и запустите phpMyAdmin .
  2. Найдите вашу базу данных Magento и выберите таблицу core_config_data .
  3. Найдите и измените следующие строки:
    • Область действия: "По умолчанию" и путь: "admin / url / custom"
      • Установите флажок NULL и сохраните.
    • Область действия: «По умолчанию» и путь: «admin / url / use_custom»
      • Измените значение с 1 на 0 и сохраните.
    • Область действия: "По умолчанию" и путь: "admin / url / use_custom_path"
      • Изменить значение с *От 1052 * 1 до 0 , если это еще не сделано, и сохраните.
  4. Найдите и удалите следующие строки:
    • Область действия: "Магазины" и путь: "web / secure / base_url"
    • Область действия: "Магазины" и Path: "web / unsecure / base_url" (должен находиться на последней странице)
  5. Удалить папку / var / cache

и вы СОВЕРШЕНО !

перейдите на предыдущий адрес администратора, и он должен работать!

14 голосов
/ 27 августа 2011

Вот исправление для ловушки-ловушки URL-адреса системной конфигурации. Это никогда не работало и, вероятно, никогда не будет. Единственный способ изменить это - изменить маршрут через local.xml

https://magento.stackexchange.com/a/40622/553

И для тех, кто включает URL-адрес Admin Base, вот способ убить его, прежде чем делать что-то еще, что БУДЕТ испортить вашу систему.

Запустите phpMyAdmin и откройте таблицу core_config_data . У вас есть четыре или более строки для редактирования.

Найти admin / url / custom и установить значение 0

Следующие три будут установлены из фанк-админского базового URL, который вы указали на панели Admin Config. Вы знаете, что это такое, следующие строки будут иметь его в поле значения. Запишите их номера config_ID и запишите их.

админ / URL / заказ и все случаи Web / небезопасный / base_url Web / безопасный / base_url

Установите, чтобы это было тем, каким должен быть базовый URL вашего сайта. Пример: http://yourwebsite.com/ и не забудьте папку, за которой следует косая черта, если вы ее установили.

РЕДАКТИРОВАТЬ: Flush / var / cache и /var/session.

Это позволит вам сейчас войти в свою панель администратора, добавив / admin к URL-адресу вашего сайта, как и прежде, чем вы начали заниматься приключениями. Перейдите к настройке Advanced Admin. Использовать пользовательского администратора будет установлен на Нет. Очистите URL-адрес из поля Пользовательский администратор и сохраните. Когда вы вернетесь и проверите свою таблицу core_config_data в phpMyAdmin, вы должны найти только строку admin / url / custom, установленную в 0, строку admin / url / custom пустую, а две другие строки перешли как они были удалены через админ панель сохранения.

Причина для этого заключается в том, что вам нужно удалить правильные строки web / unsecure / base_url и web / secure / base_url . Если вы ошиблись, веб-интерфейс вашего веб-сайта будет полностью отключен, вместо того, чтобы просто потерять бэкэнд администратора.

РЕДАКТИРОВАТЬ: Теперь, когда у вас есть резервная копия веб-сайта, вернитесь и убедитесь, что у вас есть правильный secure_base_url, чтобы вернуть ваши возможности TLS / SSL.

Все это было проверено на сервере разработки, YMMV

1 голос
/ 06 февраля 2016

Следующее - лучший шаг для отладки.

  1. Откройте Mage_Core_Controller_Varien_Front, который находится в magento / app / code / core / Mage / Core / Controller / Varien / Front.php

  2. Перейти к функции getRouterByRoute ($ routeName)

  3. Здесь поставьте этот код print_r($this->_routers);exit;
  4. Это даст вам все загруженные модули и путь к контроллеру, отсюда вы можете проверить, правильно ли загружен ваш путь к модулю.
  5. Если ваш модуль загружен неправильно, вы должны внести изменения в config.xml в вашем модуле.
1 голос
/ 10 сентября 2014

И еще больше путаницы, чтобы добавить в смесь:

Ничто из вышеперечисленного не помогло мне; моя версия magento 1.7.0.1. Этот сайт помог мне . Если вы случайно используете административный бэкэнд, чтобы сменить администратора на пользовательский URL (как я), вам понадобится доступ MySql для его исправления.

Простого изменения ключей admin/url/use_custom и admin/url/custom недостаточно. Даже когда я изменил app/etc/local.xml, все, что я пробовал, не вернется в интерфейс администратора.

Я использовал запрос, например select * from core_config_data where path like '%url%';, чтобы увидеть более широкую картину:

// much data omitted...

+-----------+---------+-------------------------------+----------------------------+
| config_id | scope   | path                          | value                      |
+-----------+---------+-------------------------------+----------------------------+
|         3 | default | web/unsecure/base_url         | http://example.com/        |
|         4 | default | web/secure/base_url           | https://example.com/       |
|           |         |                               |                            |
|       745 | default | admin/url/use_custom          | 1                          |
|       746 | default | admin/url/custom              | https://example.com/oops/  |
|           |         |                               |                            |
|      1538 | stores  | web/secure/base_url           | https://example.com/oops/  |
|      1539 | stores  | web/unsecure/base_url         | http://example.com/oops/   |
|      1540 | default | admin/url/use_custom_path     | 0                          |
+-----------+---------+-------------------------------+----------------------------+

Обратите внимание на мои идентификаторы 1538 и 1539. Они меняются вместе с настройками admin / url / custom. Смена режима admin/url/custom и admin / url / use_custom` позволяет войти в систему admin, а затем 404 по пользовательскому URL администратора oops.

Поэтому я вернул все это к тому, что было раньше:

+-----------+-------------------------------+-----------------------+
| config_id | path                          | value                 |
+-----------+-------------------------------+-----------------------+
|         3 | web/unsecure/base_url         | http://example.com/   |
|         4 | web/secure/base_url           | https://example.com/  |
|           |                               |                       |
|       745 | admin/url/use_custom          | 0                     |
|       746 | admin/url/custom              |                       |
|           |                               |                       |
|      1538 | web/secure/base_url           | https://example.com/  |
|      1539 | web/unsecure/base_url         | http://example.com/   |
|      1540 | admin/url/use_custom_path     | 0                     |
+-----------+-------------------------------+-----------------------+

... затем пошел и изменил app/etc/local.xml и смог вернуться на мой сайт.

Для очистки admin/url/custom, я использовал
update core_config_data set value='' where config_id = 746;

1 голос
/ 01 августа 2014

Просто хотел добавить, что, даже если вы выполните все шаги, описанные в сообщении на форуме Magento: http://www.magentocommerce.com/boards/viewreply/274443/, он все равно может не работать - стандартный URL-адрес администратора по-прежнему выдает ошибку.

Для меня это было потому, что каталог / var / log не был настроен с файлами exception.log & system.log. Итак, после выполнения

$ mkdir var/log
$ touch var/log/system.log
$ touch var/log/exception.log
$ chmod -R g+w var/log

(Изменить последний chmod в соответствии с требованиями к разрешениям вашего локального веб-сервера)

Тогда работал стандартный админский URL. Поэтому, если вы выполнили все шаги по БД и все еще не играли в кости, попробуйте создать файлы журнала и убедиться, что они доступны для записи на веб-сервере.

1 голос
/ 16 июня 2014

Чтобы устранить проблему, выполните следующий запрос из phpMyAdmin

UPDATE `core_store` SET store_id = 0 WHERE code='admin';
UPDATE `core_store_group` SET group_id = 0 WHERE name='Default';
UPDATE `core_website` SET website_id = 0 WHERE code='admin';
UPDATE `customer_group` SET customer_group_id = 0 WHERE customer_group_code='NOT LOGGED IN';
SET FOREIGN_KEY_CHECKS=1;
1 голос
/ 29 августа 2011

Попробовав все для решения проблемы, я обнаружил, что каталог / var не имеет правильных разрешений.Magento написал в / tmp, поэтому не было никакого эффекта, опустошая каталог / var / cache в корне magento.

Мы исправили разрешения и очистили каталог / tmp, и все вернулось в нормальное состояние.Итак, именно разрешения / var вызвали проблему.

Теперь у нас есть еще одна вещь, которую нужно учитывать, когда происходит нечто подобное.

Спасибо за вашу помощь, ребята.

0 голосов
/ 10 марта 2016

У меня была такая же проблема при установке Magento 2. Скорее всего, проблема связана с перезаписью apache2.Другая возможность - это настройки прав доступа к вашему каталогу Magento.Я хотел бы поделиться 2 решениями, которые работали для меня.

Решение 1 (если оно уже установлено)

При установке Magento 2 на локальный хост, если вы использовали «localhost» вместо 127.0.0.1Поля «Адрес вашего магазина» и «Адрес администратора Magento» на шаге 3 установки Magento, теперь вы можете изменить таблицу core_config_data на две строки:

web/unsecure/base_url to http://127.0.0.1/Magento/

и

web/secure/base_url to https://127.0.0.1/magento2/ Удалите все в каталоге Magento / var / cache.

Затем попробуйте,

http://127.0.0.1/Magento/index.php/admin/

или

http://127.0.0.1/Magento/admin/

Решение 2

Попробуйте переустановить Magento с настройками разрешений, указанными в приведенном ниже URL: http://devdocs.magento.com/guides/v2.0/install-gde/prereq/zip_install.html

В мастере установки для установки, шаг 3, используйте 127.0.0.1 в адресе вашего магазина вместо "localhost».

Еще один момент, который следует учитывать на этом шаге: разверните Дополнительные параметры и снимите флажок с опции '1030 * Apache Rewrites '.

Завершите процедуру установки и попробуйте URL-адреса администратора, указанные в решении 1.

...