前台入口文件index.php

  1. <?php
  2. //前台入口
  3. define('THINKPHP_PATH', '../ThinkPHP/');//底层的位置
  4. define('APP_PATH', './home/');//定义项目位置
  5. define('APP_DEBUG', true);//定义DEBUG开关
  6. require_once THINKPHP_PATH.'ThinkPHP.php';
  7. //echo 'hellow';
  8.  
  9. ?>

配置文件:

  1. <?php
  2. return array(
  3. //'配置项'=>'配置值'
  4. 'DEFAULT_C_LAYER' => 'Controller', // 默认的控制器层名称
  5. 'URL_MODEL' => 1, // URL访问模式,可选参数0、1、2、3,代表以下四种模式:
  6. );
  7. ?>

Controller下的IndexController.class.php文件:

  1. <?php
  2. namespace Home\Controller;
  3. use Think\Controller;
  4. class IndexController extends Controller {
  5. public function index(){
  6. echo "hello world";
  7. }
  8. }

浏览器调试结果:

这个路径http://localhost:8080/test/index.php是可以显示控制器方法中的欢迎信息的,

而http://localhost:8080/test/index.php/index和http://localhost:8080/test/index.php/index/index却提示了错误信息

:(

无法加载模块:Index

错误位置

FILE: C:\wamp\www\ThinkPHP\Library\Think\Dispatcher.class.php  LINE: 172

TRACE

#0 C:\wamp\www\ThinkPHP\Library\Think\Dispatcher.class.php(172): E('???????????????...')
#1 C:\wamp\www\ThinkPHP\Library\Think\App.class.php(36): Think\Dispatcher::dispatch()
#2 C:\wamp\www\ThinkPHP\Library\Think\App.class.php(184): Think\App::init()
#3 C:\wamp\www\ThinkPHP\Library\Think\Think.class.php(120): Think\App::run()
#4 C:\wamp\www\ThinkPHP\ThinkPHP.php(96): Think\Think::start()
#5 C:\wamp\www\test\index.php(7): require_once('C:\wamp\www\Thi...')
#6 {main}

 
然后百度得知,开启了DEBUG调试模式后,控制器路径名要严格区分大小写。
顿悟,修改地址为:http://localhost:8080/test/index.php/Index和http://localhost:8080/test/Index.php/index均还是一样的问题。
遂查阅官方手册是可以修改不区分大小写的:
在配置文件中加上一句话:'URL_CASE_INSENSITIVE'  =>  true,   // 默认false 表示URL区分大小写 true则表示不区分大小写。
试了下,还是不行!
 
想了想,是不是Controller的问题,继续查阅手册。得知

自从3.2之后thinkphp默认的控制器不再使用Action,而是使用了更贴近MVC模式的Controller。

如果你原来习惯用了Action,还是可以吧Controller修改成Action的

可以这样定义:

  1. namespace Home\Action;
  2. use Think\Action;
  3. class IndexAction extends Action{}

然后,在配置文件config.php中,设置:

  1. 'DEFAULT_C_LAYER'=>'Action'

遂,把Controller修改成Action,还是一样的问题,我的天!

继续百度!

发现发现别人的目录结构和我的好像不一样!

仔细查看代码

  1. define('APP_PATH', './home/');//定义项目位置

发现3.1生成的home项目目录下并没有Home目录

而3.2生成的home项目目录却多了一层Home目录

因此我们在URL地址上必须加上Home目录,也就是:http://localhost:8080/test/index.php/Home/Index/index(文件入口[index.php]/Home[默认]/控制器名[Index]/方法名[index])

浏览器粘贴访问,终于显示出那诱人可爱的hellow world

thinkphp无法加载模块解决办法的更多相关文章

  1. 关于thinkphp3.1无法加载模块解决办法

    关于thinkphp3.1无法加载模块解决办法 如果没有具体的哪个模块的名字 请注意PHP的版本问题

  2. WordPress博客网站fonts.useso加载慢解决办法

    WordPress博客网站fonts.useso加载慢解决办法 之前WordPress博客因为google字体库访问不了替换成360的useso,最近WordPress博客网站一直等待fonts.us ...

  3. django在关闭debug后,admin界面 及静态文件无法加载的解决办法

    当debug为true的时候,ALLOWED_HOSTS是跳过不管用的.所以这里需要将debug关掉,令debug=false,ALLOWED_HOSTS=[ '*' ]表示所有的主机都可以访问 开启 ...

  4. Eclipse 插件安装方法和插件加载失败解决办法

    一:是利用Eclipse Software  Update 添加网址,让Eclipse 自动的搜索下载最新的插件. 比如安装VE这个可视化编辑UI的插件,其步骤为 Help > Software ...

  5. netload 加载程序集抛异常----无法加载程序集解决办法

    netload 加载程序集抛异常----无法加载程序集 错误信息如下: 无法加载程序集.错误详细信息: System.BadImageFormatException: 未能加载文件或程序集“file: ...

  6. VirtualBox 下USB 设备加载的步骤及无法加载的解决办法

    1. 将u盘插入电脑,在windows能够识别后,进入VirtualBox的选定要加载的虚拟机,选择设置——>选择usb设备项 2. 选择右边的第一或者是第二个图标,增加一个新的筛选器,第一个图 ...

  7. Django项目关闭debug模式后,静态文件无法加载的解决办法

    开启内置服务器,由于项目中local_settings.py文件中的DEBUG=True,进行开发和调试一直没什么问题. 但是现在需要编写404,500等出错页面,在debug模式下出了错都会出现报错 ...

  8. vs2015 web项目加载失败解决办法

    1.问题 ---------------------------Microsoft Visual Studio---------------------------Web 应用程序项目 XXWeb 已 ...

  9. UI的设计,适配器,以及RecyclerView无法加载的解决办法

    这本书里讲到的界面设计都是用最基本的方式实现的,即编写xml文件 所有的控件都具有宽度和高度属性,即android:layout_width和android:layout_height,这两个属性对应 ...

随机推荐

  1. 从DataReader中手动串行化JSON

    void WriteDataReader(StringBuilder sb, IDataReader reader) { ) { sb.Append("null"); return ...

  2. LoadRunner 脚本学习 -- 动态储存方式和静态储存方式

    我们在定义变量是,根据定义的位置不同,分为全局变量与局部变量.我出生在一个叫“舞阳”的小县城,在这个县城中也有人名“舞阳”,前一个作用于整个县城,后一个只作用于他个人.那么从变量值的存在生存期角度,又 ...

  3. 【设计模式】MVC模式

    MVC 模式代表 Model-View-Controller(模型-视图-控制器) 模式.这种模式用于应用程序的分层开发. Model(模型) - 模型代表一个存取数据的对象或 JAVA POJO.它 ...

  4. SQL多表查询案例

    表结构: emp表: dept表: salgrade表: (1)查出至少有一个员工的部门.显示部门编号.部门名称.部门位置.部门人数. SELECT z.*,d.dname,d.loc FROM de ...

  5. AngularJS学习之HTML DOM

    1.AngularJS为HTML DOM元素的属性提供了绑定应用数据的指令: 2.ng-disabled指令:直接绑定应用程序数据到HTML的disable属性: <div ng-app=&qu ...

  6. 浩瀚移动POS收银开单扫描解决方案PDA仓储系统,无线批发,移动批发,无线POS,无线销售APP-车销管理PDA

    适用范围 各种业态的批发商铺.批发市场.订货会.展销会.配送中心仓库…… 产品简介 随着移动技术与智能PDA设备的迅猛发展,中国已经跨步进入移动信息化社会.移动商务是移动信息社会的重要载体与形式,它开 ...

  7. 上传文件大于 2G以上

    1. 开始->运行中输入以下路径, 回车. %windir%\system32\inetsrv\config\applicationhost.config 2. 在打开的配置文件中搜索" ...

  8. ASP.net的url重写

    http://blog.csdn.net/windok2004/article/details/2432691 1. 有关于URL的重写,本文也只是拿来主意.相继有MS的组件“URLRewriter” ...

  9. XIII Open Cup named after E.V. Pankratiev. GP of SPb

    A. Graph Coloring 答案为$1$很好判,为$2$只需要二分图染色,对于$3$,首先爆搜哪些边要染成第$3$种颜色,然后二分图染色判定即可. B. Decimal Fraction 枚举 ...

  10. BZOJ4382 : [POI2015]Podział naszyjnika

    对于每种颜色,可以发现可以切的位置被分割成了若干段独立的区域. 给每个区域一个编号,将$m$种颜色的情况当成字符串来看,如果两个切口的字符串完全匹配,那么可以在这里切两刀. 可以构造hash函数,通过 ...