thinkphp项目部署到Linux服务器上报错“模板不存在”如何解决

yipeiwu_com5年前服务器

最近一个项目部署到Linux服务器上去的时候,发现某些模板竟然会报错说“模板不存在:/Application/Admin/....”

检查了服务器上的文件,并没有缺少文件,再次上传文件到服务器,还是报错。莫名其妙,怀疑是代码问题。

仔细检查后,发现是模板的文件名问题

用过TP的都知道:thinkphp会在$this->display()的时候,会自动获取方法名作为模板的文件名,比如一个getUserInfo方法对用着getuserinfo.html的模板文件。

对控制器里的方法,我用驼峰命名法,而view层里的模板名,也是用了驼峰命名法。比如getUserInfo方法对应了getUserInfo.html的模板文件,但是!thinkphp在$this->display()的时候,读取方法名作为模板名,读出来的方法名是小写的,也就是要求模板名为getuserinfo.html。

在Windows下不区分文件名大小写,Linux会区分,所以报错了。

解决办法:要么改模板文件名为小写,要么$this->display('模板文件名')(不带.html)。

细节决定成败,希望这篇文章可以真正的帮助大家,谢谢大家的阅读。

相关文章

基于win2003虚拟机中apache服务器的访问

基于win2003虚拟机中apache服务器的访问

虽然在win2003配置PHP有点非主流,但你还是要会怎么弄。你也可以将本文的虚拟机看成是服务器,宿主机看成是客户端。 不像Linux系统,由于win2003有IIS的存在,占有了固有的...

python创建一个最简单http webserver服务器的方法

本文实例讲述了python创建一个最简单http webserver服务器的方法。分享给大家供大家参考。具体实现方法如下: import sys import BaseHTTPSer...

python定时采集摄像头图像上传ftp服务器功能实现

首先是截图,从摄像头截取一幅图像: 复制代码 代码如下:while 1:   #测试摄像头的存在    try:  ...

Python实现telnet服务器的方法

本文实例讲述了Python实现telnet服务器的方法。分享给大家供大家参考。具体实现方法如下: import threading class myThread(threading...

浅析linux下apache服务器的配置和管理

一、两个重要目录:Apache有两个重要的目录:1、配置目录/etc/httpd/conf;2、文档目录/var/www: 二、两种配置模式:Apache在Fedora下的两种配置方式:...