在開發時經常上傳文件到百度云部署的自己的域名下,遇到了不少問題,在這里做個總結和問題的解決思路。
1.網站打開報錯502
解決方案:沒做任何修改,過兩天自己好了,懷疑是百度云服務器的內部問題……
2.網站打開報錯551
解決思路:
(1).查看報錯內容里的Error Message的具體內容,會寫明代碼錯誤的文件,具體到哪一行哪個字符。
(2).如果看不出來自己那行的錯誤,再繼續研究頁面的報錯,查看下面的報錯信息,如npm error:里面的具體內容,逐行分析自己的代碼
(3).如果還是沒有找到信息,那么就檢查userapp.log,日志的具體位置在部署列表-->更多操作-->查看日志-->選擇日志文件名,然后逐行分析報錯。
我遇到的問題,在網站報錯頁面查找不出來錯誤,報錯的那一行是我引入了自己寫的一個文件,后來逐行分析userapp.log,查找到錯誤信息,內容是
````
SyntaxError:Block-scoped declarations (let,const,function,class) not yet supported outside strict mode
````
才明白自己的let沒有聲明嚴格模式,但由于自己整個文件寫的不是很規范,所以就將文件中的let改成了var,放棄使用es6的語法。
之前也遇到過報錯是包的問題,是由于自己的配置信息有問題,建議檢查配置文件,確定無誤了再上傳百度云。
3.發布失敗也經常遇到。
(1).一般右上角會有具體的發布失敗的信息,里面會有具體的報錯情況,建議按照信息檢查自己的代碼。如:
`````
失敗原因:編譯失敗
失敗信息:Fix depends failed. Please check requirements.txt or package.json.
````
(2).還有種情況:
`````
失敗原因:編譯成功后,部署失敗
請稍后進行重試,如仍然失敗請通過工單與我們聯系
````
這種情況,在確保自己的代碼無誤情況下,稍作修改,我的解決方法是給本地代碼多加一行注釋,然后重新上傳,間隔時間在15分鐘以上,(有時會上傳多次)就會成功了(感覺像隨機事件……)。
(3).還有種最神奇的,雖然狀態顯示是發布失敗,但網頁可以正常打開……
這種情況我就不敢亂動了- -
4.nodejs,添加部署的時候,沒有選擇最新的版本!導致文件無法打開或發布失敗。
5.git push時限制推送大小
報錯可能是:
````
fatal: recursion detected in die handler
atal: The remote end hung up unexpectedly
error: RPC failed; result=22, HTTP code = 411
fatal: The remote end hung up unexpectedly
Everything up-to-date
````
用命令行,在上傳前設置git config? http.postBuffer 52428800