这篇文章主要介绍了如何解决phpcms控制器不存在的问题,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。
控制器不存在解决方法:
一、排查问题方法
1、检查链接;
2、检查模块下的文件名称是否和链接一致;
3、检查文件中类的命名是否和文件名称一致;
4、检查类中的操作的命名是否和链接中一致。
基本上按照上述方法肯定可以排查错误。
二、分析原因
“Controller does not exist. ” 从字面意思上说是控制器不存在,V9看来是个典型的MVC模型了,找下源码在哪出现这个错误的……经我查找,这个错误是在文件phpcms / libs / classes / application.class.php 下出现的也就是function load_controller() 加载控制器中,加载不到控制器而出现的错误。
application.class.php 这个文件是PHPCMS应用程序创建类 每步开始初始化都要找其控制器。找不到就是上的错误了。
三、为什么会出现这个错误
有些用户说是会员管理时出现 Controller does not exist. ;有些用户又说是登录后台出现Controller does not exist.;
再分析了function load_controller()和其调用和关系,我发现是这样的:会员管理时,如出现这样的Controller does not exist
先这样在这个有Controller does not exist页面上右键查看属性
找到“index.php?m=member&c=member&a=manage&menuid=72&pc_hash=QauE2I ”,看到m=*** 和c=$$$了吧,$$$就是控制器,需要加载此控制器的文件。
本例就是要加载的文件就是phpcms/modules/member/member.php,相应的是phpcms/modules/***/$$$.php文件,如果这个文件不存在,就会出现Controller does not exist这个错误了。
有同学说登录后台时有Controller does not exist,同理,看下登录后台出现的地方:
登录的URL:
出现错误了:
这回可以找错误在哪了,
m=admin & c=index
找下phpcms/modules/admin/index.php文件是否存在。
四、解决方法
先把caches\configs\system.php下的配置文件要先配置好,然后把原安装包里的文件放入就解决了。
感谢你能够认真阅读完这篇文章,希望小编分享如何解决phpcms控制器不存在的问题内容对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,遇到问题就找亿速云,详细的解决方法等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。