Php Magento控制器适用于Windows,而不是Linux
我已经创建了一个可以在Windows XAMPP安装上运行的模块。然而,Linux上的测试似乎无法正常工作。更具体地说,我的控制器似乎没有加载 当访问urlPhp Magento控制器适用于Windows,而不是Linux,php,xml,windows,linux,magento,Php,Xml,Windows,Linux,Magento,我已经创建了一个可以在Windows XAMPP安装上运行的模块。然而,Linux上的测试似乎无法正常工作。更具体地说,我的控制器似乎没有加载 当访问urlwww.mysite.com/modulename/standard/时,我收到一个404错误。我希望得到一条消息,输出控制器中类定义之前的die('here') 控制器文件是/app/code/local/Namespace/Modulename/controllers/StandardController.php 该类在该文件中定义如下:
www.mysite.com/modulename/standard/
时,我收到一个404错误。我希望得到一条消息,输出控制器中类定义之前的die('here')
控制器文件是/app/code/local/Namespace/Modulename/controllers/StandardController.php
该类在该文件中定义如下:
class Namespace\u Modulename\u StandardController扩展了Mage\u Core\u Controller\u Front\u Action
我的XML配置文件摘录如下:
<frontend>
<routers>
<modulename>
<use>standard</use>
<args>
<module>Namespace_Modulename</module>
<frontName>modulename</frontName>
</args>
</modulename>
</routers>
<!-- other blocks here -->
</frontend>
有人知道可能是什么问题吗
多谢各位
编辑
根据要求,这里是模块的配置文件。这一切似乎都是正确的-模块显示在管理员/开发人员页面中,模块配置屏幕(在system.xml中生成)显示在后端。此外,部分模块(以及控制器)在前端工作
<config>
<modules>
<Namespace_Modulename>
<active>true</active>
<codePool>local</codePool>
</Namespace_Modulename>
</modules>
</config>
真的
地方的
编辑2
有些版本可能会被证明是有用的。
PHP5.3
Magento 1.5.1.0请尝试以下代码:
<frontend>
<routers>
<namespace_modulename>
<use>standard</use>
<args>
<module>Namespace_Modulename</module>
<frontName>modulename</frontName>
</args>
</namespace_modulename>
</routers>
<!-- other blocks here -->
</frontend>
标准
名称空间_Modulename
模块名
您的控制器是否实际命名为StandardController.php?在区分大小写的文件系统中,“Controller”之前的部分应该以大写字母开头,而所有其他字母都应该小写我简直不敢相信
我的开发框在我不知情的情况下被更新了,在这个过程中,我的Apache配置被更改了!我终于意识到,我没有收到Magento通常的404错误页面,只有一个普通、难看的404页面,并检查了我的Apache错误日志,其中指出文件/Modulename/standard
不存在。更新Apache配置以添加以下内容修复了此问题:
<Directory "mymagentodirectory">
AllowOverride All
</Directory>
允许超越所有
真不敢相信。感谢所有花时间阅读和回复的人!:) 您能否显示
app/etc/modules/Namespace_Modulename.xml
?@jamapag-已经用xml编辑了这个问题。谢谢。已清除缓存rm-rf var/cache/*?@Anton S-Yep,缓存已清除(也已禁用)。索引也是最新的。愚蠢的问题,但在名称空间\u Modulename\u StandardController
类中是否有indexAction()
方法?恐怕没有运气。使用URL(www.mysitehere.com/modulename/standard/
和www.mysitehere.com/modulename/standard/
)以及
标记的大写和非大写版本尝试了这种方法。@pet171非常奇怪的问题。。。你能把你的模块代码上传到某个地方让我仔细看看吗?
<Directory "mymagentodirectory">
AllowOverride All
</Directory>