thinkphp項目部署到Linux服務器上報錯“模板不存在”如何解決
最近一個項目部署到Linux服務器上去的時候,發(fā)現(xiàn)某些模板竟然會報錯說“模板不存在:/Application/Admin/....”
檢查了服務器上的文件,并沒有缺少文件,再次上傳文件到服務器,還是報錯。莫名其妙,懷疑是代碼問題。
仔細檢查后,發(fā)現(xiàn)是模板的文件名問題:
用過TP的都知道:thinkphp會在$this->display()的時候,會自動獲取方法名作為模板的文件名,比如一個getUserInfo方法對用著getuserinfo.html的模板文件。
對控制器里的方法,我用駝峰命名法,而view層里的模板名,也是用了駝峰命名法。比如getUserInfo方法對應了getUserInfo.html的模板文件,但是!thinkphp在$this->display()的時候,讀取方法名作為模板名,讀出來的方法名是小寫的,也就是要求模板名為getuserinfo.html。
在Windows下不區(qū)分文件名大小寫,Linux會區(qū)分,所以報錯了。
解決辦法:要么改模板文件名為小寫,要么$this->display('模板文件名')(不帶.html)。
細節(jié)決定成敗,希望這篇文章可以真正的幫助大家,謝謝大家的閱讀。
- Linux連接mysql報錯:Access denied for user ‘root’@‘localhost’(using password: YES)的解決方法
- Linux 初始化MySQL 數(shù)據(jù)庫報錯解決辦法
- linux 環(huán)境 mysql寫入中文報錯
- linux mount報錯:you must specify the filesystem type的解決方法
- linux下 root 登錄 MySQL 報錯的問題
- linux mysql 報錯:MYSQL:The server quit without updating PID file
- Linux常見英文報錯中文翻譯(菜鳥必知)