Получение ошибки Magento 404 при доступе к настройкам модуля через админ-панель
-
22-07-2019 - |
Вопрос
Итак, я скачал бесплатное расширение блога Magento, но оно поддерживает только один блог.Поэтому я продублировал расширение, поскольку мне нужно более одного блога в моем магазине Magento.Я соответствующим образом изменил все ссылки и вызовы в своей копии расширения и смог установить его как отдельное расширение.
Однако когда я хочу создать новое сообщение из панели администратора, мне выдает ошибку Magento 404.
Буду признателен, если кто-нибудь взглянет и сообщит мне, чего мне не хватает.
Обратите внимание, что для тестирования я использую две среды:
локальная установка Magento через MAMP/WAMP (предварительно упакованная среда рабочего стола LAMP для Mac и Windows) с PHP 5.2.6, MySQL 5 и Apache 2.0.59.
Веб-сервер с PHP 5.2.10, MySQL 5.x и Apache 2.x
На моем локальном MAMP/WAMP я могу без проблем создать блог.Однако, когда я тестирую его на работающем сервере, я больше не могу создавать новые сообщения в блоге, и перенаправление на страницу администратора страницы создания сообщения выдает мне ошибку magento 404.
Я думал, что это может быть связано с некоторыми настройками сервера, но я совсем не уверен и был бы признателен, если бы кто-нибудь еще мог разобраться в этом для меня.
Спасибо.
Программист
Решение
Сначала ругань, потом помощь, потому что StackOverflow так катится.Если вы действительно не знакомы с соглашениями Magento, скорее всего, вы не изменили достаточно правильных вещей.
Прочтите о контроллер отсоединить обработайте в Magento и попробуйте отслеживая его прогресс
Итак, теперь вы знаете, что ваше имя — «vblog_admin».Загружаются ли КАКИЕ-ЛИБО страницы с этим именем?Если нет, проверьте раздел <routers> вашего настроенного модуля.
Имя вашего контроллера — «manage_vblog», что означает, что в настроенном модуле у вас должен быть контроллер в следующем месте:
ModuleName/controllers/Manage/Vblog.php
.Убедившись, что контроллер установлен, убедитесь, что на нем есть метод newAction.
Если какой-либо из вышеперечисленных шагов не удастся, magento выдаст вам ошибку 404.Наконец, в
app/code/core/Mage/Core/Controller/Varien/Router/Standard.php
Поиск текста getControllerFileName
.Здесь ваш контроллер получает свое имя, а также общую область системы, где Magento решает, имеет ли он законный запрос или нет.
Обновлять: Судя по файлу, представленному ниже (и личному сообщению), похоже, что проблема связана с вашими соглашениями об именах.Magento чрезвычайно строг в отношении соглашения об именовании верблюжьего регистра.
VBlog
должно быть
Vblog
во всех случаях классов и имен файлов.В то время как сам PHP не заботится о регистре в именах классов, серверы msot Linux учитывают регистр.Из-за этого Magento не может найти файл класса вашего контроллера, и поэтому вы получаете ошибку 404.