编程语言
首页 > 编程语言> > php – 通过管理面板访问模块设置时出现Magento 404错误

php – 通过管理面板访问模块设置时出现Magento 404错误

作者:互联网

所以我下载了Magento免费博客扩展,但它只支持一个博客.
所以我复制了扩展,因为我在magento商店需要多个博客.我在扩展副本中更改了所有引用和调用,并能够将其作为单独的扩展安装.

但是,当我想从管理面板创建一个新帖子时,它会给我一个Magento 404错误.

如果有人可以看看,让我知道我错过了什么,我将不胜感激.

请注意我使用两个环境进行测试:

>使用PHP 5.2.6,MySQL 5和Apache 2.0.59通过MAMP / WAMP(适用于Mac和Windows的预打包LAMP桌面环境)本地安装Magento
>使用PHP 5.2.10,MySQL 5.x和Apache 2.x的Web服务器

在我当地的MAMP / WAMP上,我可以创建一个没有问题的博客.但是,当我从实时服务器测试它时,我不再能够创建新的博客帖子,并且重定向到创建帖子页面的管理页面会给我一个magento 404错误.

我一直在想这可能与某些服务器设置有关,但我完全不确定,如果其他人可以为我调查,我会很感激.

谢谢.

程序员

解决方法:

首先是骂,然后是一些帮助,因为这就是StackOverflow如何滚动.除非你真的熟悉Magento惯例,否则你很可能没有改变正确的事情.

>阅读Magento中的controller distach流程并尝试tracing its progress
>那么,那就读了,你现在知道你的名字是“vblog_admin”.是否有加载此正面名称的任何页面?如果没有,请检查您的<路由器>您自定义模块的一部分
>您的控制器名称为“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的原因.

标签:php,magento,module,http-status-code-404
来源: https://codeday.me/bug/20190827/1742726.html