我也是萬萬沒想到 2023 年的開篇文章,竟然是因為一個 PHP 程序的 “bug”。事情是這樣的,當我在 WordPress 網站上進行主題在線更新時,突然出現了 WordPress php 的 Fatal error,整個網站打不開,刷新后依舊無法解決,我們來看看 bug 是怎么回事?
圖片來源:wordpress
我們根據 bug 提示能看到,致命錯誤(Fatal error)是因為調用了未定義的函數 trailingslashit
Call to undefined function trailingslashit()
這時候我開始疑惑,半年多來我的網站一直正常運行,怎么就突然出現了未定義的函數呢,事出反常必有妖,現在的 bug 肯定與之前的網站主題更新有關。
我們接著往下看 bug 提示,一整段看不懂不要緊,就找能看得懂的單詞,英語不好也不要緊,用翻譯軟件。
這時我在 bug 提示中看到了一個單詞,maintenance,這個單詞是“維護”的意思,wp_maintenance() 就是 WordPress 維護,看到這里我恍然大悟,原來是之前的主題更新,讓 WordPress php 自動切換到了維護模式。
原因找到了,接下來給出解決辦法。
為了驗證我的猜測,我到 WordPress 根目錄中查看,果然看到了 .maintenance 文件,再看看日期,和網站主題更新時間最接近,是它沒錯了,它就是讓網站出現致命錯誤的罪魁禍首。
圖片來源:寶塔面板
這時我們登錄寶塔面板,進入“文件”中找到“根目錄,然后把這個文件 .maintenance 刪除掉,然后再重新啟動 PHP 程序,這時候網站已經恢復正常了。
以后再遇到類似 WordPress 內核、插件或主題的更新,可以先嘗試這樣的解決方法。
(來源:Hopeshe跨境)
以上內容屬作者個人觀點,不代表雨果跨境立場!本文經原作者授權轉載,轉載需經原作者授權同意。?