網頁502排錯
今天部門主管給我丟了個問題出來,讓我解決,問題是這樣的,早上倉庫訪問web的時候訪問不了,連接超時,我之前遇到過,這種情況一般是防火墻白名單沒加上,或者失效了,有這種情況只需要重啟防火墻基本都可以了,于是我找到域名對應的ip,連接上服務器,重啟了防火墻,結果并沒有解決問題,于是我便將防火墻關閉了重新訪問網頁,這時候網頁顯示502錯誤,查看了服務器上的服務,我發現是php-fpm掛掉了。于是重啟了pho-fpm,再次訪問網頁頁面,頁面顯示not file found ,找不到檔案,于是我用netstat 查看了埠對應的服務,用ps -ef 找到了服務對應的檔案路徑,我cd到路徑下,發現對應網頁目錄下的檔案顯示為空,什么也沒有,這讓我一頭霧水,我想,難道檔案被人干掉了?(初級腦回路),我突然想起,這個網頁還有一個備用的域名頁面,于是找到那個域名,查找到對應的ip,登錄服務器,看到這臺服務器上的web只對應了一個域名,原來是做了轉接處理,本來我想把另一臺服務器的域名也加在這臺上,但是這只能解決訪問的問題,我雖然可以訪問網頁了,但是服務器的壓力也會變大,如果之前這個方法行得通的話,以前的運維就不會再開一臺服務器了(明顯是為了緩解服務器壓力),這個方案作罷,接著找原因,我想,既然是502錯誤(and 找不到檔案),那就看一下是什么原因導致的吧!上網查了好多案例資料,結果都一無所獲,仔細想了很久,既然對應目錄下沒有對應檔案,那是不是只要給它個對應檔案就可以了呢?我找到之前的主服務器將檔案拷貝到了對應目錄下,在次訪問,網頁保錯,說找不到檔案中的某個對應php腳本,有點崩潰,結果還是保錯,于是我只好找之前的運維,向報資訊情況,我把保錯發給他,然后因為有備用的web是可以正常訪問的,所以問了他,是不是之前做了web主備,他跟我說,可能是php或者介面的問題,讓我找下開發,然后又跟我說,之前這兩臺web是做了nfs共享,好吧,我算是知道原因了,把系統回恢復到最開始的樣子(因為之前有拷貝另一臺服務器的檔案過來),重啟了所有服務,訪問時候保錯not file要的就是這個,df -h 可以看到,掛載沒有共享目錄, found,使用showmount -e 共享服務的ip 查看,確實是nfs掛掉了,檢查了開機自啟,什么都沒有,我去,我都有點懷疑了!共享為什么不做自動掛載,坑爹啊!我到主服務器上查看了一下nfs文 件,沒有問題,于是重啟了一下nfs服務,到客戶端查看,有檔案了,于是mount掛載共享目錄到對應目錄下,再次查看,網頁依然保錯,清除了瀏覽器快取,再次訪問,ok,網頁正常了!
總結:
1.看到保錯應該先了解情況,問一下之前出現這個錯誤是怎么解決的,服務結構是什么樣子的,這很重要,不然自己一頭霧水,搞半天不知道這個錯誤是怎么回事,細心的人可能會很早想到,但是剛進一下新公司,還是建議多問,可以節約很多不必要的時間浪費.
2.細心,對服務熟悉的情況下,排錯要細心,思路要清晰.
3.建議做一些抗壓練習,不然一緊張,原本很簡單的東西也會弄半天.
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/32403.html
標籤:網絡
