加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

php – Magento扩展404错误

发布时间:2020-12-13 19:09:55 所属栏目:Linux 来源:网络整理
导读:我很难过! 我有一个自定义扩展,在Mac Leopard本地工作得很漂亮,但是在推送到主机(Centos Linux)后,当我尝试调用前端路由器时,我收到Magento 404错误. 例如这个URL: [domain] /shop/index.php/bbyd_sync/index/在现场生成404,但在本地返回“done”. 这是我

我很难过!

我有一个自定义扩展,在Mac Leopard本地工作得很漂亮,但是在推送到主机(Centos Linux)后,当我尝试调用前端路由器时,我收到Magento 404错误.

例如这个URL:
[domain] /shop/index.php/bbyd_sync/index/在现场生成404,但在本地返回“done”.

这是我的config.xml:


我的IndexController.php

class Bbyd_Sync_IndexController extends Mage_Core_Controller_Front_Action
{
    public function indexAction() {
        echo "done";
    }
}

我的app / code / local结构(我在这里使用字母大小写):

Bbyd
    Sync
        controllers
            IndexController.php
        etc
            config.xml
            system.xml
        Helper
            Data.php
        Model
            Run.php
            Mysql4
                Run.php
        sql
            sync_setup
                mysql4-install-0.1.0.php

当然我也有/app/code/etc/modules/Bbyd_Sync.xml.

关于Mac和Mac之间发生的问题,任何人都有一些明智的想法. Magento的Linux平台?也许是文件/目录的大写?

顺便说一下,这是Magento 1.5.

任何帮助表示赞赏…(我的第一个要求所以请温柔!)

最佳答案
步骤0:清除实时服务器上的缓存和会话.

步骤1:使用免费/开源Module List Module检查您的模块是否已安装

步骤2:使用以下方法删除一些调试代码. var_dumps将告诉您Magento的路由器在您的模块中寻找哪些文件/类,但无法找到.

File: app/code/core/Mage/Core/Controller/Varien/Router/Standard.php

protected function _validateControllerClassName($realModule,$controller)
{
    $controllerFileName = $this->getControllerFileName($realModule,$controller);
    if (!$this->validateControllerFileName($controllerFileName)) {
        var_dump($controllerFileName);
        return false;
    }

    $controllerClassName = $this->getControllerClassName($realModule,$controller);
    if (!$controllerClassName) {
        var_dump($controllerFileName);
        return false;
    }

    // include controller file if needed
    if (!$this->_includeControllerClass($controllerFileName,$controllerClassName)) {
        var_dump($controllerFileName);
        return false;
    }

    return $controllerClassName;
}   

第3步:调试which 404 page it is.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读