前情介紹,我本地電腦tp6專案除錯完,打算部署到線上linux伺服器,但是部署至linux伺服器,專案報錯500,無法訪問,並且沒有任何提示資訊(我的lnmp)
1,訪問網域名稱如圖:
2,首先,thinkphp6專案是需要安裝依賴的,我以為是依賴沒有安裝,我執行
composer update
更新依賴,再次訪問,還是一樣的,沒有任何錯誤資訊,但是無法正常訪問
3,排查是否是nginx解析錯誤,我在index.php入口檔案列印phpinfo()資訊
訪問能夠正常列印php資訊,說明網域名稱解析沒問題,nginx**也正常到了專案目錄
4,以上都排除,下一步,開啟php錯誤級別
首先開啟php.ini檔案
vim /usr/local/php/etc/php.ini
開啟搜尋display_errors與display_startup_errors
並將改兩處修改為
display_errors = on
display_startup_errors = on
如圖:
再修改,
將錯誤級別全開
error_reporting = e_all | e_strict
如圖:
儲存退出::wq
重啟php:service php-fpm restart
訪問網域名稱,還是沒有報錯資訊,無法訪問,並且,我在index.php入口檔案加入如下**:
error_reporting(e_all);
ini_set('display_errors', '1');
也是沒有錯誤資訊
所以,這沒有錯誤資訊,無法除錯,下面看第五步
5,開啟nginx錯誤日誌
首先,檢視nginx.conf檔案error_log檔案位置
vim /usr/local/nginx/conf/nginx.conf
我的是在vhosts目錄下的網域名稱配置檔案裡面,檢視如圖:
開啟該目錄下的錯誤日誌檔案
檢視,錯誤資訊如圖:
因為是linux伺服器沒有安裝redis
所以問題出來了,解決就是了,大致排查思路就是這樣
為什麼redis拒絕連線沒有直接報錯,應該是tp6修改了錯誤日誌級別,優化了吧,等後面深入研究看看
tp6初探基礎
通過命令列安裝 composer create project topthink think tp命令列安裝的tp6會在根目錄下生成 example.env檔案 此為環境變數示例檔案 重新命名為 env按需求修改即可,修改後預設開啟了除錯模式 檢視.env檔案,設定除錯模式開關 true 開啟除錯時...
TP6安裝單應用和TP6安裝多應用
php 7.1.0 必須使用composer安裝更新tp61 第一次安裝,在命令列下面,切換到你的web根目錄下 面並執行下面的命令 tp是專案檔名稱可以修改 composer create project topthink think tp2 詳細安裝檢視官方文件 1 在命令列下面,切換到你的專案...
TP6資料庫作業
1.查詢所有email欄位為 thinkphp qq.com 的資料。dump db table think tp where email thinkphp qq.com select 查詢id為3的資料email列的值。dump db table think tp where id 3 selec...