Page

[原创]Thinkphp3.2设置了URL模式为rewrite模式造成后台控制器无法找到

747Anson16-05-24


当我们在公共配置文件common/conf/config.php设置了url_module=>2,发现后台控制器无法找到,解决方法是只把配置信息写在home的config.php下。

一般来说,设置了URL模式为rewrite模式造成后台控制器无法找到,出现如下报错。

1464071966107364.jpg

在ThinkPHP中,一般来说应用的配置文件是自动加载的,加载的顺序是:

惯例配置->应用配置->模式配置->调试配置->状态配置->模块配置->扩展配置->动态配置

惯例配置:ThinkPHP文件夹中的配置文件,一般是不用修改,会自动加载到目录;

应用配置:根目录下的Common/Conf/config.php文件,这是公共配置文件,默认情况下配置的参数会自动分配到各个模块下;

模块配置:应用目录下的模块目录配置,如Home,Admin,配置文件模块间独立,互不影响,模块配置会将与应用配置重复的参数覆盖掉,并继承其他配置参数。


综上可得,如果在应用配置下设置了url_module值,该值会自动分配到Home和Admin下,如果只希望作用于Home模块,则可以将url_module只设置在Home/Conf/config.php下,就可以把前台的index.php省略掉。以下是参考目录与配置:


   

1464072559749871.jpg

1464072564130988.jpg


不仅如此,我们还可以在index.php入口文件中加入绑定模块,就可以把Home模块省略掉


1464072710441333.jpg


来自Anson博客

2016年5月24日