1. 程式人生 > >thinkphp專案部署到Linux伺服器上,報錯“模板不存在”

thinkphp專案部署到Linux伺服器上,報錯“模板不存在”

最近一個專案部署到Linux伺服器上去的時候,發現某些模板竟然會報錯說“模板不存在:/Application/Admin/....”

檢查了伺服器上的檔案,並沒有缺少檔案,再次上傳檔案到伺服器,還是報錯。莫名其妙,懷疑是程式碼問題。

仔細檢查後,發現是模板的檔名問題:

用過TP的都知道:thinkphp會在$this->display()的時候,會自動獲取方法名作為模板的檔名,比如一個getUserInfo方法對用著getuserinfo.html的模板檔案。

對控制器裡的方法,我用駝峰命名法,而view層裡的模板名,也是用了駝峰命名法。比如getUserInfo方法對應了getUserInfo.html的模板檔案,但是!thinkphp在$this->display()的時候,讀取方法名作為模板名,讀出來的方法名是小寫的,也就是要求模板名為getuserinfo.html。

在windows下不區分檔名大小寫,Linux會區分,所以報錯了。

解決辦法:要麼改模板檔名為小寫,要麼$this->display('模板檔名')(不帶.html)。

相關推薦

thinkphp專案部署Linux伺服器模板存在”

最近一個專案部署到Linux伺服器上去的時候,發現某些模板竟然會報錯說“模板不存在:/Application/Admin/....” 檢查了伺服器上的檔案,並沒有缺少檔案,再次上傳檔案到伺服器,還是報錯。莫名其妙,懷疑是程式碼問題。 仔細檢查後,發現是模板的檔名問題:

關於專案部署伺服器介面資料正常狀態碼500可能是session問題

剛開始一直報500錯誤,頁面不提示,也沒想著去檢視日誌檔案。好幾天了,一看日誌,發現是這個問題。問了一下,是session的問題、 2017/07/25 16:57:49 [error] 2300#0: *1 FastCGI sent in stderr: "PHP message: PHP Fatal e

vue-cli生成的專案打包部署在tomcat伺服器404

1. 專案一般情況下在本地是不會出現這個問題的,因為我們在本地開發時,專案的訪問路徑就是'/',但是部署到伺服器以後,此處我們以tomcat為例, 專案會部署在webapps目錄下面,為了做以區分,我們通常會另建一個專案目錄,例如我們建個sample目錄,此時伺服器上專案的根

eclipse生成war包部署在tomcat404

1。解決方案,配置tomcat的server.xml在host節點下配置:<Context docBase="C:/soft/apache-tomcat-7.0.42/webapps/aaa.war" path="/hello" reloadable="true"&g

linux伺服器用tomcat直接執行WAR包專案404原因分析

昨天在伺服器上剛部署好專案的釋出環境,把打好的專案war包放進webapps資料夾裡面後,一直訪問不到專案,並且報404的錯誤,並且在tomcat manager頁面上可以看到專案的running 為false,由於之前並未碰到類似情況,在網上尋找好久並未找到解決方法,最好想

部署java-web專案linux伺服器

記錄自己部署javaweb專案的基本操作以及遇到的坑 我用的是eclipse,匯出war包。 (這裡有個巨坑,eclipse有專案快取,所以你改的東西可能沒有用,tomcat伺服器也有快取,所以匯出的時候記得清一下快取) 在linux伺服器上安裝配置tomcat伺服器,把

scrapy專案Linux伺服器部署

scrapy專案在Linux伺服器上部署時,如果不想採用scrapyd(官方文件)的方式。啟動命令如果使用scrapy crawl {spider},執行一次就會停止,如果使用死迴圈的cmdline方式也是執行一次就停止。 最後在網上看到使用subproces

伺服器小白的我是如何將 node+mongodb 專案部署伺服器並進行效能優化的

前言 本文講解的是:做為前端開發人員,對伺服器的瞭解還是小白的我,是如何一步步將 node+mongodb 專案部署在阿里雲 centos 7.3 的伺服器上,並進行效能優化,達到頁面 1 秒內看到 loading ,3 秒內看到首屏內容的。 搭建的專案是採用了主流的前後端分離思想的,這裡只講 伺服器環境

Linux伺服器命令列下執行Matlab的.m檔案

1、採用shell工具例如xshell連線伺服器,鍵入 matlab ,或者含有matlab的相關命令,按照提示要求安裝Xmanager工具,只需官網下載,按說明安裝。 2、直接執行Matlab:$matlab,然後可以開啟matlab工具,根據xmanager工具可以在本地開啟matlab

專案部署伺服器能連線資料庫

這次專案是採用連線池連線資料庫,整個專案中只有一個數據庫連線物件,且不釋放(防止高頻率訪問,多次建立資料連線物件),專案部署到伺服器上釋出測試時, 問題: 1.開始專案測試開始時,可以連線資料庫,後來隔一天後測試就不能連線上資料庫了,但從新部署專案到伺服器上,又可以連線資

springBoot專案部署伺服器

1.xshell工具部署專案到伺服器上 第一:知道伺服器地址是多少,使用者名稱,密碼 伺服器地址:此處省略 使用者名稱: 此處省略 密碼: 此處省略 第二:本地springBoot專案打包 右擊專案---run as --maven install 第一次打包失

伺服器小白的我,是如何成功將 node+mongodb 專案部署伺服器並進行效能優化的

前言 本文講解的是:做為前端開發人員,對伺服器的瞭解還是小白的我,是如何一步步將 node+mongodb 專案部署在阿里雲 centos 7.3 的伺服器上,並進行效能優化,達到頁面 1 秒內看到 loading ,3 秒內看到首屏內容的。 搭建的專案是採用了主

本地的專案部署伺服器需修改的部分

部署需修改的地方注意:首先要關閉tomcat一、資料庫連線二、圖片上傳配置檔案,工具類圖片顯示配置檔案,工具類server中與配置檔案一致server.xml中<Context docBase="D:\upload\pic" path="pic"/>三、uedit

將執行好的Maven專案部署伺服器在瀏覽器中執行404錯誤

1.可能的原因:maven中自動引入的jar包與Tomcat伺服器中的jar包發生了衝突2.我自己的原因是:在eclipse生成了war包以後將其拷貝在Tomcat的webapp目錄下,並且將其中生成的版本號去掉了,找到Tomcat的bin目錄,在檔案框中輸入startup啟

曹工雜談:Linux伺服器Spring Boot 原地修改 jar 包配置檔案/替換class檔案免去重複傳的麻煩

一、前言 相信很多同學有這樣的需求,現在很多公司都有多地的研發中心,經常需要跨地區部署,比如,博主人在成都,但是伺服器是北京的。一般城市間網路都不怎麼好,上傳一個幾十兆的jar包那是真的慢,別說現在微服務架構下,動輒兩位數的fat jar。這裡說的jar,就是spring boot專案打出來的fat jar

centos6git拉代碼時候提示支持低版本ssl的解決方法

git報錯[root@rdpops_mwdb-20-25 /root ]# git clone https://github.com/pyenv/pyenv.git 報錯信息如下2行:error: while accessing https://github.com/pyenv/pyenv.git/inf

Linux下Java運行.class文件到或無法加載主類

code 運行 pro jar 更改 class ssp linux lib classpath配置的錯誤,所以找不到.class文件。 原先的etc/profile中的classpath配置 export CLASSPATH=$JAVA_HOME/lib/tools.j

Linux下Java執行.class檔案到或無法載入主類

classpath配置的錯誤,所以找不到.class檔案。 原先的etc/profile中的classpath配置 export CLASSPATH=$JAVA_HOME/lib/tools.jar   更改後的: export CLASSPATH=.:$JAVA_HOME

Eclipse從SVN檢出maven專案後沒有jar包顯示是maven專案

Eclipse從SVN檢出maven專案後,會發現它只是一個普通的java project,如圖: 這裡我們需要把它轉成maven-webapp,並調整相關屬性,設定執行環境,關聯相關jar目錄等。 個人環境: eclipse4.4 Luna   JDK7    Tomcat7    Maven3.1

排除linux伺服器問題為什麼網站打常用的linux命令

1、top命令檢視伺服器負載情況,CPU使用率,程序數等資訊。 0.0% wa IO等待佔用CPU的百分比 86.9% id  表示空閒的CPU佔比 load average資料是每隔5秒鐘檢查一次活躍的程序數,然後按特定演算法計算出的數值。如果這個數除以邏輯CPU的數量