Magento控制器工作Windows,而不是Linux

我创build了一个适用于我的Windows XAMPP安装的模块。 然而,在Linux上进行testing似乎并不正确。 更具体地说,我的控制器似乎并没有加载。

当访问urlwww.mysite.com/modulename/standard/我得到一个404错误。 我希望得到一个消息输出控制器中的类定义之前的die('here')

控制器文件是/app/code/local/Namespace/Modulename/controllers/StandardController.php

这个类在这个文件里面定义如下:

class Namespace_Modulename_StandardController extends Mage_Core_Controller_Front_Action

从我的XMLconfiguration文件中提取的是这里:

 <frontend> <routers> <modulename> <use>standard</use> <args> <module>Namespace_Modulename</module> <frontName>modulename</frontName> </args> </modulename> </routers> <!-- other blocks here --> </frontend> 

我最初的想法是,这是一个大小写敏感的问题,我没有注意到在Windows上开发。 以前的XML片段如下,这也没有工作。 另请注意,我已经尝试访问两个XML版本的www.mysite.com/Modulename/standardwww.mysite.com/modulename/standard ,每次都有404错误。

 <Modulename> <use>standard</use> <args> <module>Namespace_Modulename</module> <frontName>Modulename</frontName> </args> </Modulename> 

有人知道可能是什么问题吗?

谢谢。

编辑

按照要求,这里是模块的configuration文件。 这一切似乎是正确的 – 该模块显示在pipe理员/开发人员页面和模块configuration屏幕(在system.xml中生成)出现在后端。 而且,模块的一部分(看起来是控制器)正在前端工作!

 <config> <modules> <Namespace_Modulename> <active>true</active> <codePool>local</codePool> </Namespace_Modulename> </modules> </config> 

编辑2

有些版本可能会有用。 PHP 5.3的Magento 1.5.1.0

试试这个代码:

 <frontend> <routers> <namespace_modulename> <use>standard</use> <args> <module>Namespace_moduleename</module> <frontName>modulename</frontName> </args> </namespace_modulename> </routers> <!-- other blocks here --> </frontend> 

你的控制器实际上是否被命名为StandardController.php? 在“控制器”之前的大小写敏感的文件系统部分应该从大写字母开始,所有其他字母应该小写

我不敢相信!

我的开发盒在我不知情的情况下被更新,看来,在这个过程中,我的Apache配置被改变了! 我终于意识到,我没有收到Magento通常的404错误页面,只有一个普通的,丑陋的404页面,并检查了我的Apache错误日志,说文件/moduleename/standard不存在。 更新我的Apache配置添加以下修复的问题:

 <Directory "mymagentodirectory"> AllowOverride All </Directory> 

我不能相信。 感谢所有花时间阅读和回复的人! 🙂