Працюючи з Magento 2, ви можете натрапити на численні помилки або повідомлення, які продовжують руйнувати або переривати процес керування системою. Однією з найпоширеніших помилок Magento є помилка Access Denied HTTP 403, яка з’являється під час роботи з адмін панеллю Magento 2.
Хоча багато хто з вас стикається з цією проблемою, мало хто дійсно знає, з чим вона пов’язана і як її вирішити. Отже, у цій статті ми надамо дійсно просте та швидке виправлення помилки "Access denied", щоб дозволити будь-кому з технічними навичками або без них легко впоратися з нею.
Однак давайте визначимо, що таке помилка Magento "Access denied" в першу чергу.
Що означає помилка Magento "Access denied"?
Помилка доступу Magento Access denied — це найпоширеніша помилка Magento, яка виникає, коли ви намагаєтеся отримати доступ до веб-сторінки, не маючи права на це. Зазвичай вона з’являється в адмін панелі Magento, коли ви використовуєте неправильні облікові дані адмін панелі, створюєте нового користувача з неправильною роллю або встановлюєте розширення Magento 2.
Як виправити помилку "Access denied" в Magento 2?
Тепер, коли ви знаєте основні причини, чому може з’явитися помилка "Access denied", давайте розглянемо їх відповідно.
Рішення 1. Отримайте правильні дані доступу
Якщо ви втратили облікові дані адмін панелі, єдиний спосіб відновити їх — за допомогою таблиць бази даних. Перейдіть до своєї бази даних і виконайте такий SQL запит:
SET @salt = MD5(UNIX_TIMESTAMP()); UPDATE admin_user SET password = CONCAT(SHA2(CONCAT(@salt, 'YourNewPassword'), 256), ':', @salt, ':1') WHERE username = 'admin';
Тепер спробуйте увійти з новим паролем, якщо ви не можете увійти, перевірте 2 стовпці: first_failure і lock_expires в таблиці admin_user і задайте значення цих стовпців — null.
Рішення 2. Додайте відповідну роль користувача
Якщо ви зіткнулися з проблемою "Access denied" в Magento після того, як ви додали нового користувача, швидше за все, ви не призначили йому відповідну роль користувача.
У цьому випадку увійдіть під іншим користувачем або попросіть адміна перейти у System > Permissions > All Users та призначити вашому користувачеві певну роль.
Рішення 3. Отримайте дозвіл заходити на певне розширення
Оскільки Magento не оновлює дозволи для нових розширень автоматично, ви можете не мати доступу для перегляду налаштувань нового розширення.
Зазвичай допомагає повторно зайти у адмін панель. Однак, якщо помилка Magento "Access denied" залишається, скиньте права адміністратора.
- Перейдіть у System > Permissions > User Roles і знайдіть роль, для якої недоступно нове розширення.
- Змініть доступ до ресурсів на всі або деякі конкретні розширення в розділі Role Resources.
Рішення 4. Виправте конфлікт у файлах system.xml та config.xml
Іноді буває, що після того, як ви ввімкнули певні кастомні модулі у Magento 2 з’являється проблема "Access denied", що не дозволяє отримати доступ до цього кастомного модуля.
Спробуйте вимкнути розширення та перевірте, чи проблема залишилась. Якщо так, перевірте файли system.xml та config.xml. Деякі записи в файлах config.xml і system.xml можуть бути відсутні.
Тепер ви зможете швидко виправити помилку "Access denied" та повернутися до роботи в адмін панелі Magento. Незалежно від того, чи є ви розробником чи ні, ви повинні знати, як виправляти помилки в Magento, щоб усунути всі можливі проблеми та швидше знайти рішення.
Якщо у вас виникли проблеми з вирішенням деяких проблем самостійно, зверніться до професіоналів. Ми в компанії Magefan з розробки на Magento, завжди раді допомогти.