WordPress通常不會無緣無故地出現錯誤,常見的WordPress錯誤一般為第三方主題或者外掛,伺服器設定等導致。
雖然許多錯誤乍一看似乎令人生畏,但大多數WordPress問題源於通常易於處理的相對較小的問題。只要您瞭解問題的根源,您通常可以自行執行一些基本的故障排除。
為了幫助您,本教學將介紹如何診斷和糾正12個最常見的WordPress錯誤。
1.解析錯誤/語法錯誤
讓我們從一個簡單的開始。雖然我們將要檢視的許多錯誤可能會因它們提供給您的資訊太少而令人沮喪,但“解析錯誤”(或“語法錯誤”)至少足以幫助您準確地告訴您出了什麼問題。
當您的站點程式碼存在問題時,會發生此錯誤,最常見的是在functions.php檔案中。將出現一條簡單的訊息,而不是載入您的頁面,其中解釋了問題所在以及發生的位置。
要解決此問題,您需要使用SFTP訪問指定的檔案。推薦使用FileZilla,因為它是一個免費的開源工具。只需使用您的網路主機提供的伺服器賬號密碼,並訪問您網站的後端。
然後,您需要找到有問題的檔案。在上圖中的示例中,您可以看到問題出 在站點當前主題的functions.php檔案中。因此,我們將訪問該主題的資料夾,右鍵單擊functions.php,然後選擇View/Edit。
如果您檢查Parse錯誤訊息,您可以看到它甚至會告訴您問題存在於哪一行。現在我們只需要找到那一行程式碼並解決問題。在我們的例子中,這是一個缺少括號的簡單情況,所以讓我們解決這個問題。
儲存您的檔案,並在您的FTP客戶端詢問您是否要替換伺服器上的現有檔案時選擇是。您現在應該能夠檢查您的網站並看到它恢復正常。
2. 死亡白屏 (WSoD)
WordPress中最臭名昭著和最神祕的錯誤之一是可怕的白屏宕機 (WSoD)。此錯誤只是將您的整個站點替換為一個空白、白色的內容,不留下任何錯誤訊息或進一步的幫助。
出現此問題的原因有多種,通常意味著您的網站無法正確載入。因此,有多種方法可以對其進行故障排除。
實際上,我們之前已經在本部落格中介紹了如何修復WSoD,因此我們建議您檢視我們針對此錯誤的綜合指南。但是,以下是您可以採取哪些措施來解決這個特別棘手的問題的快速摘要:
- 禁用外掛。 WSoD背後最有可能的罪魁禍首是有問題的外掛,因此請嘗試將它們全部禁用,看看是否能解決問題。
- 禁用主題。您的主題也可能導致此問題,因此請使用SFTP將其替換為WordPress的預設主題之一。
- 啟用WordPress除錯模式。 這是一個有用的功能,可讓您直接在每個頁面上檢視錯誤,這可以幫助您查明WSoD的根本原因。
- 清除快取。 最後,即使WSoD已修復,您站點的快取解決方案也可能導致您看到過時的檔案。因此,您需要清除快取並檢視是否可以解決問題。
- 提高記憶體限制。 您的站點可能記憶體不足。您可以通過編輯php.ini檔案來提高最大限制。
這些方法將在絕大多數情況下修復WSoD。但是,如果您仍然遇到問題,您應該聯絡您的伺服器支援團隊以獲得更多幫助。
3. 內部伺服器錯誤
該內部伺服器錯誤是另一個問題,可以是令人沮喪的不透明有關基本問題。
幸運的是,此錯誤的潛在原因比WSoD少。當伺服器出現未知問題時會出現,一般是以下情況之一引起的:
- 您網站的.htaccess檔案有問題。
- 您的網站已達到其記憶體限制。
簡單來說,.htaccess是一個檔案,它決定了您的WordPress站點如何與其伺服器通訊。此檔案可用於提高站點的安全性,並覆蓋某些預設伺服器設定。要測試並檢視此檔案是否導致內部伺服器錯誤,您需要做的就是禁用它。
您可以再次使用SFTP執行此操作。該檔案通常位於您站點的根目錄中,該目錄通常名為public_html。
要禁用該檔案,只需更改其名稱。例如,如果您將其重新命名為.htaccess-disabled,則您可以檢查您的站點以檢視問題是否已解決。
如果這確實解決了問題,您需要做的就是生成一個新的、無錯誤的.htaccess檔案。您可以通過進入管理儀表板並訪問 設定>固定連結 來做到這一點。
您無需在此處進行任何實際更改。只需單擊“儲存更改” 即可生成新的.htaccess檔案。這應該有望解決問題。
如果沒有,您可能需要增加PHP記憶體限制。如果您發現無法進一步提高限制,您可能需要升級你的網站伺服器配置。
4. 404錯誤
404錯誤應該是網際網路使用者最熟悉不過的了。
它表示伺服器無法找到請求的頁面。此錯誤最常與損壞的連結和更改的 URL 相關聯,但即使您要查詢的頁面應該 可用,也會發生此錯誤。
發生這種情況時,最可能的原因還是.htaccess檔案。此檔案還處理您站點的超連結結構,並且它可能會錯誤地重定向您的 URL。因此,您的第一步應該是 使用我們在上一節中概述的步驟重新生成一個新的.htaccess檔案。
但是,萬一這不能解決錯誤,您可能需要重新上傳.htaccess。最簡單的方法是建立一個新檔案,命名為.htaccess(不要忘記句號,也不需要新增副檔名),然後貼上以下預設程式碼:
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
您現在可以將檔案上傳到站點的根資料夾。在大多數情況下,這應該可以解決您看到的404錯誤。
5. 建立資料庫連線時出錯
顧名思義,如果您的站點無法訪問其資料庫,則會出現此錯誤。如果您不熟悉該術語,您站點的資料庫就是儲存其所有內容的地方。這包括您的文章、頁面和使用者資訊。因此,如果您無法訪問資料庫,您的站點將根本無法執行。
發生此錯誤的原因有多種,但大多數原因源於您網站上的單個檔案,即wp-config.php。此檔案包含有關您站點資料庫的所有資訊,因此它很可能是此類問題的根源。
要修復資料庫連線,請訪問您站點的wp-config.php檔案,該檔案應位於其根資料夾中。
右鍵單擊該檔案,然後選擇View/Edit。您首先要檢查檔案中的憑據是否正確。為此,您應該訪問您的phpMyAdmin 以查詢確切的詳細資訊。如果檔案中的主機名、使用者名稱、密碼和/或資料庫名稱不正確,替換它們應該可以修復錯誤。
但是,如果錯誤仍然存在,您可能需要啟用WordPress的自動資料庫優化工具。此功能可用於修復損壞的資料庫,可以通過在wp-config.php 檔案中新增以下行來啟用:
define( 'WP_ALLOW_REPAIR', true );
儲存檔案並將其上傳回伺服器後,您可以通過在瀏覽器中導航到https://yourwebsiteurl.com/wp-admin/maint/repair.php來執行新指令碼。結果頁面將如下所示:
您需要做的就是單擊任一按鈕以執行修復工具。該過程完成後,頁面將重新載入,您應該會看到一條訊息,告訴您資料庫表已修復。
這應該處理您的資料庫連線錯誤。完成後不要忘記從wp-config.php中刪除WP_ALLOW_REPAIR行。
6. 連線超時錯誤
您可能已經看到在站點嘗試(不成功)載入一段時間後出現此錯誤。這意味著伺服器正在努力載入站點,並且基本上已經放棄。
發生這種情況的原因有很多,其中最常見的是您的站點沒有正常執行所需的資源。例如,如果您使用共享主機,另一個站點可能會佔用您伺服器的資源。或者,您的站點可能已超出其最大允許頻寬。
因此, 如果您多次看到此錯誤,您可能需要考慮升級您伺服器配置。更高階別的計劃將幫助您避免速度減慢和停機,因為您的站點將擁有更多伺服器資源,並且不會受到其他站點流量激增的影響。
如果您的站點對伺服器造成很大壓力,也會發生“連線超時”錯誤。因此,我們建議您優化網站的速度,擺脫任何佔用資源的外掛,並檢查您的主題,看看它是否會拖累您的效能。同樣,您可能還想增加PHP記憶體限制。
7. 網站側邊欄錯位
有時,您可能會發現側邊欄不知道因何原因跑到了每個頁面和文章主要內容底部而不是側邊。
這通常總是由主題的HTML或CSS程式碼問題引起的。因此,此錯誤可能是由於您的主題最近發生了更改。如果您最近編輯過任何主題檔案,請嘗試將它們恢復到以前的狀態,看看是否能解決問題。
更具體地說,在解決此問題時,您應該注意兩個主要事項:
- 多餘的<div>標籤: 這些標籤用於新增HTML元素,如果沒有正確開啟或關閉,可能會導致側邊欄移動。
- CSS中的頁邊距不正確:如果您的style.css檔案中的頁邊距設定不正確,則側邊欄可能在您的主要內容旁邊沒有所需的空間。
檢查這些問題的主題,您應該能夠找到問題的根源。您還可以通過W3C標記驗證服務執行受影響的頁面,以幫助您更快地找到錯誤的來源。參考此前我們寫的教學,可以幫助你更快地解決問題。
8. 無法上傳圖片
圖片在您的WordPress網站上有幾種不同的“破壞”方式。在您上傳它們後,它們可能會顯示不正確,或者您可能根本無法上傳它們。無論哪種方式,問題很可能源於不正確的檔案許可權。
從本質上講,這意味著該站點不知道您被允許新增和訪問您嘗試使用的檔案。如果您的網站被黑客入侵,或者外掛意外重寫了您的許可權,就會發生這種情況。幸運的是,有一個簡單的解決方法。
再一次,您需要使用SFTP訪問您的站點。這次您需要找到 位於wp-content 目錄中的uploads資料夾。
但是,您不想開啟此資料夾。相反,右鍵單擊它並選擇File permissions。這將開啟資料夾的許可權設定。
您需要將Numeric值設定為744,因為這將讓所有者(即您)讀取和寫入上傳。 完成此操作後單擊“確定”,新許可權將被應用。
您需要對資料夾內的所有檔案重複相同的過程,因此現在右鍵單擊上傳 並 再次選擇檔案許可權。這一次,您需要將該值設定為644並選中Recurse into subdirectories選項。您還需要選擇僅應用於檔案。
儲存更改後,您網站的媒體庫應該會再次正常工作。您可以通過在管理儀表板中上傳影象來檢查這一點。如果仍有問題,您可以重複上述過程,但將上傳 資料夾的許可權值設定為755而不是744。
對於網站無法上傳圖片或者檔案,建議閱讀“如何修復WordPress無法上傳圖片&檔案錯誤”完整教學。
9. 無法訪問WordPress後臺
到目前為止,我們討論的錯誤都是由技術問題引起的。但是,被鎖定在WordPress儀表盤之外有點不同。簡而言之,這通常發生在您忘記密碼時。
現在,沒有必要恐慌。丟失密碼並不意味著您無法訪問您的網站。首先,您可以單擊丟失密碼?登入頁面上的連結。這將允許您通過輸入您的使用者名稱或電子郵件地址來恢復您的密碼。
在絕大多數情況下,這將奏效。但是,在極少數情況下,此功能可能存在問題,它可能被禁用,或者您可能無權訪問您註冊時使用的電子郵件。
如果是這種情況,可以使用phpMyAdmin來重置您的密碼。但是,使用此方法可能存在風險,因為您可能會意外導致站點或資料庫出現問題。因此,您只能將此方法用作最後的手段。該過程本身會因不同的伺服器和設定而異,在此處就不演示如何進入phpMyAdmin的流程。
進入資料庫管理後臺,您需要找到使用者表,該表通常稱為wp_users或類似名稱。找到它後,找到您的特定使用者帳戶並單擊Edit。
您現在可以更改您的個人資料資訊,包括其密碼。用您要使用的任何密碼替換user_pass行中的當前字串。
您還應該將功能下拉選單設定為MD5,因為這將加密密碼。儲存更改後,您可以繼續使用新密碼再次登入。
10. WordPress卡在維護模式
維護模式是一項自動功能,可在您的站點更新時暫時禁用它。這是為了避免使用者在您更新網站時嘗試使用您網站上的功能的情況,這可能會導致問題。
通常,更新過程非常快,您甚至不會注意到更改。但是,如果更新必須在完成之前取消,您可能會發現您的站點無限期地處於維護模式。
好訊息是,這是一個非常容易解決的問題。您需要做的就是再次啟動 SFTP,訪問您站點的根資料夾,然後刪除名為.maintenance的檔案。
此檔案用於啟用維護模式,因此刪除它將使您的站點恢復正常。但是,您還需要重試失敗的更新,因為此錯誤意味著它沒有成功完成。
11. 定時釋出錯誤
定時釋出是WordPress一項非常有用的功能之一。您可以提前計劃文章釋出的日期時間,到點即自動釋出內容。
但是,有時此係統會失敗,您會在文章旁邊檢視錯過的定時釋出錯誤。
在沒有太技術性的情況下,這個問題是由稱為“cron作業”的東西引起的, 這是WordPress用來自動執行某些流程的任務。如果在安排您的文章時未觸發適當的cron作業,它將無法釋出並保留在您的管理儀表板中,直到您手動執行此操作。
避免此錯誤的最佳方法是使用WordPress外掛,我們推薦Scheduled Post Trigger。
這是一個免費且非常輕量級的外掛,可確保負責釋出預定文章的cron作業按預期執行。通過在您的網站上啟用它,您可以放心,您計劃的文章將從現在開始準時釋出。
12. WordPress無法自動更新
隨時更新您的WordPress網站至關重要。 多年來,我們一直強調這一點,它仍然是我們給每個網站所有者的最重要的建議之一。部分WordPress主機自帶自動更新功能,您通常不需要自己執行此操作,因為伺服器將應用新的WordPress更新。
但是,偶爾會出現問題,自動更新會失敗。
當然,這是非常不規則的,但它可能發生。這通常是由於伺服器與WordPress檔案的連線出現故障、檔案許可權不正確(我們之前討論過)或網際網路連線不可靠。
如果WordPress無法自動更新,您可能會遇到WSoD,或者在您嘗試訪問您的網站時注意到警告錯誤。要解決此問題,您需要手動更新WordPress,方法是下載最新版本的軟體並使用SFTP將其安裝在您的站點上。
或者您也可以嘗試我們的Kill 429外掛,該外掛當時設計開發的初衷是為了幫助站長解決429 Too Many Requests問題。但它同時也可以解決,WordPress更新連線錯誤問題。
注:該外掛目前處於停止更新狀態,但理論上可以使用來用於WordPress更新或者主題外掛更新網路連線失敗導致的問題。
評論留言