如何解决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

如何解决phpcms控制器不存在的问题

先这样在这个有Controller does not exist页面上右键查看属性

如何解决phpcms控制器不存在的问题

找到“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:

如何解决phpcms控制器不存在的问题

出现错误了:

如何解决phpcms控制器不存在的问题

这回可以找错误在哪了,

m=admin & c=index

找下phpcms/modules/admin/index.php文件是否存在。

四、解决方法

先把caches\configs\system.php下的配置文件要先配置好,然后把原安装包里的文件放入就解决了。

原创文章,作者:CQWKC,如若转载,请注明出处:http://www.wangzhanshi.com/n/16854.html

(0)
CQWKC的头像CQWKC
上一篇 2025年1月2日 12:43:37
下一篇 2025年1月2日 12:43:39

相关推荐

发表回复

登录后才能评论