Magento 2“拒绝访问”错误
虽然你们中的许多人都面临这个问题,但很少有人真正知道它与什么有关或如何解决这个问题。因此,在本指南中,我们将为“拒绝访问”错误提供一个非常简单和快速的解决方案,以使任何有或没有技术技能的人都能处理它。
但是,让我们首先定义什么是 Magento“拒绝访问”错误。
什么是 Magento“拒绝访问”错误?
Magento Access denied 错误是最常见的 Magento 错误,当您尝试访问网页而无权进入时出现。当您使用不正确的管理面板凭据、创建具有错误用户角色的新用户或安装Magento 2 扩展时,它通常会出现在 Magento 管理员中。
如何修复 Magento 2 中的“拒绝访问”错误?
现在您知道“访问被拒绝”错误可能出现的主要原因,让我们相应地解决它们。
解决方案 1. 获取正确的凭据
如果您丢失了管理面板凭据,恢复它们的唯一方法是通过数据库表。转到您的数据库并运行以下 SQL 查询:
SET @salt = MD5(UNIX_TIMESTAMP());
UPDATE admin_user SET password = CONCAT(SHA2(CONCAT(@salt, 'YourNewPassword'), 256), ':', @salt, ':1') WHERE username = 'admin';
现在尝试使用新密码登录,如果无法登录,请检查admin_user表中的2 列: first_failure和lock_expires并将这些列的值设置为 null。
解决方案 2. 分配适当的用户角色
如果您在添加新用户后在 Magento 中遇到“访问被拒绝”问题,很可能您没有为他们分配用户角色。
在这种情况下,使用其他用户登录或要求管理员转到System > Permissions > All Users并将您的用户分配给某个用户角色。
解决方案 3. 获取访问特定扩展程序的权限
由于 Magento 不会自动更新对新扩展的权限,因此您可能无权查看新的扩展设置。
它通常有助于重新登录管理面板。但是,如果 Magento “拒绝访问”错误仍然存在,请重置管理员权限。
1.转到System > Permissions > User Roles 并找到新扩展被阻止的角色。
2.在Resource Access更改为全部或某些特定扩展Role Resources。
解决方案4.修复system.xml和config.xml冲突
有时会发生在启用某些自定义模块后,Magento 2 中的“访问被拒绝”问题出现并阻止您访问自定义模块。
尝试禁用扩展并检查问题是否仍然存在。如果是,请检查 system.xml 和 config.xml 文件。config.xml和system.xml中的某些条目可能会丢失。
现在您应该能够快速修复“访问被拒绝”错误并立即跳回与 Magento 管理员一起工作。无论您是否是开发人员,您都应该知道如何对Magento 进行故障排除以消除所有可能的问题并更快地找到解决方案。