为啥 Magento 管理操作重定向到管理仪表板?
Posted
技术标签:
【中文标题】为啥 Magento 管理操作重定向到管理仪表板?【英文标题】:Why Magento admin action redirect to admin Dashboard?为什么 Magento 管理操作重定向到管理仪表板? 【发布时间】:2022-01-23 11:54:35 【问题描述】:我正在尝试更改管理员 route.xml 中的请求 url 值。当我使用 vendor_module 作为 frontName 它工作正常。但是当我尝试在管理路由中使用 module 作为 frontName 时,它不起作用。
供应商/模块名称/etc/adminhtml/route.xml
之前
<router id="admin">
<route id="vendor_module" frontName="vendor_module">
<module name="Vendor_ModuleName" />
</route>
</router>
之后
当我使用下面的代码作为管理路由时,它对我不起作用。就像我尝试访问 url module/template/edit 然后将其重定向到管理仪表板页面。
<router id="admin">
<route id="vendor_module" frontName="module">
<module name="Vendor_ModuleName" />
</route>
</router>
注意:我想在不关闭 Admin > Store > Configuration > Advanced > Admin > Security > Add Secret Key to URLs 的情况下使用它
【问题讨论】:
【参考方案1】:route.xml 文件中的 id 和 front name 必须相互同步。如果您设置不同,它不会知道您使用的 URL,因此会将您重定向到管理员的主页。
【讨论】:
那么为什么在下面的路径设置NO时它会起作用?管理员 > 商店 > 配置 > 高级 > 管理员 > 安全 > 将密钥添加到 URL【参考方案2】:对于字段:Add Secret Key to URLs,该字段的主要作用是secret Key,用于防止CSRF(Cross-site request forgery)攻击(最实际的例子就是你的例子)。这是一个已由 Magento 修复的安全漏洞。如果禁用此字段,您的管理页面将很容易受到攻击
跨站请求伪造,也称为一键式攻击或会话骑乘,缩写为 CSRF(有时发音为 sea-surf[1])或 XSRF,是一种对网站的恶意利用,未经授权的命令被从网站信任的用户传输。[2]与利用用户对特定站点的信任的跨站点脚本 (XSS) 不同,CSRF 利用站点在用户浏览器中的信任。 我建议启用此选项。
【讨论】:
好的,感谢您的宝贵时间。选项是启用,但这不是我的问题的答案。我只想知道如果我更改字体名称那为什么它不起作用?以上是关于为啥 Magento 管理操作重定向到管理仪表板?的主要内容,如果未能解决你的问题,请参考以下文章