在windows本地開發(fā)好的項目,部署到線上環(huán)境中遇到的一些問題處理
一、為了項目運行安全,不暴露所選的PHP框架,會修改Thinkphp的錯誤頁面,如下圖

而改為我們自定義的錯誤頁面
方案:
配置參數(shù): 'TMPL_EXCEPTION_FILE' => './error_404.html',
二、為了隱藏報錯信息,會把入口文件的調(diào)試模式設置為false,此時線上請求地址攜帶駝峰的url會報錯,如xxxx.com/Home/Index/userInfo
1、排錯技巧:
(1)、排查nginx的配置是否有錯,排查nginx能否收到請求,轉(zhuǎn)發(fā)路由是否報錯
(2)、排查Thinkphp框架的Runtime/Logs日志,查看具體錯誤信息
2、遇到的問題示例:
(1)、Fatal error: Uncaught Error: Class 'Think\Log' not found in /home/www/bus/ThinkPHP/Library/Think/Think.class.php:335
若報這個錯,一般問題時Runtime文件目錄在Linux的權(quán)限問題,一是給Runtime文件賦予權(quán)限,
chmod 777 -R 路徑/Runtime/??
刪除 rm -rf 路徑/Runtime/common~runtime.php 文件
(2)、在控制器的方法名時駝峰寫法,在模板文件的名稱也是駝峰寫法,請求報錯:
查看框架日志報錯:
ERR: 模板不存在:./View/Home/Index/userInfo.html
這是由于Thinkphp框架在$this->display()默認解析的模板文件大小問題
方案:在$this->display()中把模板文件名給加上,如$this->display('userInfo')即可
參考鏈接:
https://blog.csdn.net/dengjiexian123/article/details/53121552
https://blog.csdn.net/szuaudi/article/details/77879834