排查方法
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下的配置文件要先配置好。
把原安装包里的文件放入就解决了。
热点文章
最新文章