您好,登錄后才能下訂單哦!
這篇文章主要講解了“如何解決ThinkPHP關閉調試模式時報錯的問題”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“如何解決ThinkPHP關閉調試模式時報錯的問題”吧!
案例一:
最近用ThinkPHP開發一個項目,本地開發測試完成上傳到服務器后,第一次打開正常,再刷新頁面時就出現 “頁面調試錯誤,無法找開頁面,請重試”的錯誤.
我就郁悶啦,明明本地設置define('APP_DEBUG', false) 運行沒點問題,怎么放到服務器上就出錯了昵?
baidu,Google還是沒有找到解決方案,突然發現項目APP_Name/Runtime/Cache目錄和APP_Name/Runtime/Logs目錄沒有可寫權限,果斷更改,F5,唉好啦,媽媽再也不用擔心出現錯誤信息啦!
案例二:
ThinkPHP 將 APP_DEBUG 常量設置為 false 后出現了類似下面的問題:
復制代碼 代碼如下:
Parse error: syntax error, unexpected T_STRING in E:\PHPnow\htdocs\ojbak\Runtime\~app.php on line 1
或者直接報”服務器錯誤”, 怎么辦?
這個和 PHP 有關系,在 php.ini 里修改配置
復制代碼 代碼如下:
short_open_tag = On
因為 app.class.php 里面的 build 方法:
當開啟了調試模式后,會獲取相關文件的內容 然后重新組合成文件 這個時候是會自動加上 的
也就是你看到的 ~app.php 文件了
但是當你不開啟調試模式后,會每次都會加載相關的文件,這樣子,你的錯誤就暴露出來了。
案例三:
在thinkphp中將APP_DEBUG設置為false之后,數據查詢(select, find等等)總是顯示第一條。。但是把APP_DEBUG設置為true之后,就正常了。。這是為什么?有什么解決方案嗎?
正常來說,APP_DEBUG是調試模式,放到線上環境,盡量要設置為false的。。
自己找一個select查詢,在關閉debug的情況下,用寫文件的方式調試下查詢后生成的sql。
感謝各位的閱讀,以上就是“如何解決ThinkPHP關閉調試模式時報錯的問題”的內容了,經過本文的學習后,相信大家對如何解決ThinkPHP關閉調試模式時報錯的問題這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。