如何修復WordPress發生的max_execution_time致命錯誤

錯誤型別:
PHP錯誤
錯誤名稱:
php提示超过x秒最长执行时间错误
英文名稱:
max_execution_time
錯誤描述:
每个WordPress站点都有处理服务器请求的最大执行时间限制。它旨在最大程度地减少服务器滥用。此限制会查看您网站上运行的所有PHP脚本,并阻止那些运行超过时间限制的PHP脚本。

如何修復WordPress發生的max_execution_time致命錯誤

您偶爾會在WordPress中遇到錯誤或警告。您可能會遇到的這些錯誤之一是WordPress網站的max_execution_time致命錯誤。

遇到這樣的錯誤可能會讓你失去平衡。這是一個好訊息,因為這是一個常見錯誤。它不經常發生,但是當它發生時,有幾個快速的解決方案。

  1. 什麼是WordPress網站max_execution_time錯誤?
  2. 為什麼會發生max_execution_time錯誤?
  3. 如何修復max_execution_time WordPress錯誤

什麼是WordPress網站max_execution_time錯誤?

WordPress網站產生的max_execution_time致命錯誤在您的WordPress管理儀表盤中如下所示:

儀表盤中的最大執行時間錯誤

儀表盤中的最大執行時間錯誤

整個錯誤訊息如下:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
"Fatal Error: Maximum execution time of 30 seconds exceeded"
"Fatal Error: Maximum execution time of 30 seconds exceeded"
"Fatal Error: Maximum execution time of 30 seconds exceeded"

30秒的值可以是任何數字。通常,它在30到60秒之間。安裝或更新主題、外掛或WordPress核心時,很容易彈出此錯誤。

為什麼會發生max_execution_time錯誤?

每個WordPress站點都有處理伺服器請求的最大執行時間限制。它旨在最大程度地減少伺服器濫用。此限制會檢視您網站上執行的所有PHP指令碼,並阻止那些執行超過時間限制的PHP指令碼。

由於WordPress站點檔案主要使用PHP,因此必須密切關注PHP指令碼,以檢視它們是否執行時間過長並佔用過多伺服器資源。惡意攻擊利用永無止境的PHP指令碼來使網站爬行的情況並不少見。

此外,如果執行時間過長,某些外掛、主題或其他WordPress元素可能會佔用伺服器資源。外掛似乎比其他元素更頻繁地觸發此錯誤訊息——可能是因為WordPress使用者安裝外掛的頻率高於他們修改程式碼或安裝主題的頻率。此外,外掛來自各種開發人員,因此很難檢查出由可靠程式碼和頻繁更新支援的好外掛。

不管是什麼原因,讓PHP指令碼執行很長時間的原因並不多。因此,設定了最長執行時間限制。您的託管公司通常在伺服器級別設定此限制。

標準最大執行時間限制是多少?

大多數託管公司強制執行的最大執行時間在30到60秒之間。這個範圍使您的PHP指令碼有足夠的時間來完成它們的工作,即使它們需要一些時間來執行。

一般來說,30秒的時間限制應該適用於高質量的PHP指令碼。但是,您可能需要將限制增加到60秒,具體取決於您的程式碼和伺服器響應。一些開發人員可能會選擇最多300秒,但任何超過此時間的決定都不是明智的決定。

你可能想知道:有沒有可能有一個網站,其中PHP指令碼需要更長的時間,但它們不會對伺服器造成任何損害?

是的——一些資源密集型網站不得不達到更長的執行時間。但是,最好先假設可能是外掛、主題或其他整合導致了問題,然後再得出不同的、不太有趣的結論。您的站點也可能需要更強大的伺服器,尤其是在您當前使用共享主機設定的情況下。

有時託管公司可能會為您的網站設定過低的最長執行時間。這是一種非常常見的情況,您可以通過聯絡您的託管服務提供商來解決它。

“致命錯誤”:聽起來很糟糕

“致命錯誤”文字聽起來很緊急,但您的網站不會面臨永遠無法再次執行的風險。max_execution_time這樣的WordPress錯誤是WordPress中最常見的警告之一。

但是,您可能會在網站的前端找到一條訊息,告訴使用者該網站遇到了技術問題。

這是一個問題 – 如果警告訊息阻止您的內容並在任何時間段內保持活動狀態,您可能會失去銷售、潛在客戶或讀者。

如何確定是否發生WordPress max_execution_time錯誤

檢視您是否已超過最大執行時間的主要方法是在上傳外掛、主題或WordPress更新時檢查儀表板中的訊息。

安裝或更新頁面呈現有關更改的資訊,併為您提供“成功”或“失敗”訊息。“致命錯誤”訊息也是一個選項。

儀表盤內的致命錯誤訊息

儀表盤內的致命錯誤訊息

識別最大執行錯誤的另一種方法是檢視向使用者傳送的前端訊息,其中顯示“該站點遇到技術困難”。

關於技術問題的前端訊息

關於技術問題的前端訊息

此訊息還有其他變體,其中一些討論嚴重錯誤幷包含一個瞭解除錯的連結。

較新WordPress版本上的替代前端訊息

較新WordPress版本上的替代前端訊息

最後,WordPress通常會向網站管理員傳送一封電子郵件,說明外掛或主題導致了致命錯誤。該電子郵件還將提供一個連結來幫助您找到問題的解決方案,通常是通過刪除有問題的外掛或主題或增加您的最長執行時間限制。

一封來自WordPress關於如何修復最大執行錯誤的電子郵件

一封來自WordPress關於如何修復最大執行錯誤的電子郵件

對於所有導致“技術困難”訊息的錯誤,請務必閱讀我們的解決這些問題的指南。但是,要特別關注修復最大執行時間錯誤,請繼續閱讀。

如何修復WordPress錯誤max_execution_time

如前所述,WordPress錯誤max_execution_time出現在外掛、主題或WordPress更新需要太長時間才能執行PHP指令碼之後。

您會在多個區域看到錯誤通知。如果您無法訪問您的網站,您收到的致命錯誤電子郵件包含一個連結,用於在恢復模式下啟動您的WordPress例項。

恢復模式允許您訪問儀表板並刪除外掛等問題

恢復模式允許您訪問儀表板並刪除外掛等問題

有幾種方法可以修復WordPress錯誤max_execution_time

  • 首先識別並解除安裝導致錯誤的外掛、主題或其他資源。它是在恢復模式下完成的,或者通過FTP刪除外掛。
  • 通過外掛增加WordPress儀表盤中的最大執行時間。
  • 在wp-config.php中修改最大執行時間。
  • 增加.htaccess檔案中的最大執行時間。
  • 更改php.ini檔案中的最大執行時間。
  • 要求您的託管服務提供商增加最大執行時間。

解除安裝外掛或主題通常是最快的方法,但我們將介紹以下所有選項。

解除安裝問題專案

此解決方案消除了最大執行錯誤,但不會增加最大執行時間。因此,如果您決定願意為有問題的外掛或主題尋找替代品,這只是一個合適的選擇。

如果您改為增加最大執行時間以為外掛或主題留出空間,請轉到以下部分。

那些有興趣刪除問題專案(例如,主題或外掛)的人,請按照以下說明進行操作。

首先,請通過以下方法盡力確定問題出在哪裡:

  • 解除安裝最近安裝的專案,尤其是在安裝外掛或主題或更新到最新版本的WordPress後立即發生錯誤時。
  • 檢查您的電子郵件收件箱以檢視WordPress是否向您傳送了有關致命錯誤的電子郵件。有時它們會首先包含有關哪個外掛導致問題的資訊。
  • 如果您不知道是哪個專案導致了錯誤,我們建議您停用每個外掛,然後一個一個地重新啟用它們,每次重新整理以捕獲哪個專案導致了錯誤。

確定問題專案後,應從WordPress站點將其解除安裝。

要完成此過程,請閱讀我們關於解除安裝WordPress外掛的文章。該指南重點介紹瞭如何使用儀表板、FTP客戶端等刪除外掛。

通過儀表板解除安裝最適合快速刪除,但如果您無法訪問WordPress儀表盤,則通過FTP解除安裝外掛或主題會派上用場。您還可以選擇使用恢復模式進入儀表盤。WordPress在您收到的電子郵件中包含一個指向恢復模式的連結。

最後,您可能會發現最近的WordPress版本升級導致了該錯誤。使用我們關於如何回滾WordPress版本的指南來解決此問題。一般來說,WordPress版本不應該是根本原因——它通常是一個外掛或主題與新的WordPress版本不相容。

如何增加WordPress的最大執行時間(使用外掛)

另一種選擇是增加最大執行時間,讓外掛和主題中的PHP指令碼有更多時間工作。

同樣,最大執行時間是為了您的站點和伺服器的安全,所以最好不要增加它以適應編碼不佳的外掛或主題。但是,您可能會發現您的託管公司設定了較短的執行時間,或者您可能需要一些額外的時間。

在這些情況下,增加最大執行時間以消除WordPress網站max_execution_time錯誤並最大限度地減少將來再次出現錯誤的機會是可以接受的。

更改最大執行時間的一種方法是通過儀表板安裝一個外掛,該外掛可以更改配置檔案,而無需進入WordPress檔案。對於那些不習慣使用FTP客戶端的人,我們喜歡此選項,但前提是您可以訪問該站點的儀表板。

一些安全和優化外掛,例如Google PageSpeed Insights,可以選擇增加最大執行時間。

另一個專注於最大執行時間的外掛稱為WP Maximum Execution Time Exceeded。我們建議嘗試這個,因為它會自動重寫.htaccess檔案以增加最大限制。

WP Maximum Execution Time Exceeded外掛

WP Maximum Execution Time Exceeded外掛

你無事可做;安裝並啟用外掛以使其工作。

您只需要安裝和啟用外掛——僅此而已

您只需要安裝和啟用外掛——僅此而已

預設情況下,該外掛會提供300秒的延遲,而不是您最初擁有的任何延遲,這應該為您的網站的主題和外掛提供足夠的時間來執行它們的PHP指令碼。

最後,如果您想刪除增加的時間限制,請解除安裝外掛。

如何在wp-config.php中增加最大執行時間

以下每種方法都會利用您的核心WordPress檔案。我們建議通過FTP/SFTP訪問您的WordPress站點檔案並修改其中的內容。

至於處理WordPress網站的max_execution_time錯誤,解決問題的一種方法是開啟wp-config.php檔案。

開啟與WordPress檔案的FTP連線。找到並開啟根資料夾(通常以您的站點命名)並單擊該/public資料夾。

/public資料夾包含大量核心檔案,包括wp-config.php

單擊wp-config.php可以直接在FTP客戶端中進行編輯,也可以將其儲存到您的計算機中進行編輯。

找到wp-config檔案

找到wp-config檔案

將以下程式碼放入wp-congfig.php檔案中:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
set_time_limit(300);
set_time_limit(300);
set_time_limit(300);

只要不修改檔案中已有的任何內容,程式碼的放置位置通常都無關緊要。我們建議在“停止編輯”之前找到最後一個區域並將程式碼放在那裡。

在wp-config中設定新的最大執行時間

在wp-config中設定新的最大執行時間

之後,儲存並通過FTP將新的wp-config.php檔案上傳到您的站點。此示例的新最大執行時間為300秒,但您可以根據需要修改該數字。

為確保它正常工作,請返回WordPress以檢視現在是否一切正常。如果您嘗試上傳外掛或主題時沒有出現錯誤,則說明您已成功。

如何增加 .htaccess 中的最大執行時間

許多其他主機(主要是共享主機提供商)仍然使用Apache伺服器,因此在您的根WordPress資料夾中提供了一個.htaccess檔案。

您可以像查詢wp-config.php檔案一樣找到該檔案:通過FTP連線到您的站點並在/public資料夾下檢視。

查詢並單擊 .htaccess

查詢並單擊 .htaccess

在編輯之前備份您的.htaccess檔案非常重要。閱讀本教程,瞭解如何備份WordPress檔案。

備份後,開啟.htaccess檔案進行編輯。

將此行新增到檔案中:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
php_value max_execution_time 300
php_value max_execution_time 300
php_value max_execution_time 300

隨意將數字更改為您想要的任何最大執行時間。請儲存檔案並將其上傳回FTP客戶端中的資料夾/public。最後,返回您的網站檢查問題是否已解決。

如何在php.ini中增加最大執行時間

另一個在Web主機中不常見的檔案稱為php.ini。這是增加執行最大值的另一種選擇,但通常情況下,使用wp-config.php方法會更輕鬆。

但是,如果您確定根資料夾中存在php.ini檔案並且其他方法由於某種原因不起作用,請考慮改用php.ini檔案。

與其他方法非常相似,您通常可以在/public資料夾中找到php.ini檔案。通過FTP客戶端訪問它。

開啟該檔案進行編輯。

找到php.ini檔案

找到php.ini檔案

新增此行以增加最大執行時間:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
max_execution_time = 300
max_execution_time = 300
max_execution_time = 300

與往常一樣,更改數字以滿足您自己的需求,並記住通過重新上傳問題專案並檢查所有錯誤訊息是否已消失來測試它是否有效。

聯絡您的託管服務提供商以請求增加最大執行時間

在專用伺服器上執行WordPress站點意味著您可以完全控制最長執行時間。因此,以前的方法應該有效。您還可能會發現您可以手動更改其他型別的託管(如託管或VPS託管)的最大執行時間。

許多共享託管公司限制您修改最大執行時間限制的能力,以保護與許多其他應用程式和網站共享的整個伺服器。

如果您不想弄亂它,或者您無法增加最大執行時間,您必須聯絡您的託管服務提供商並要求他們為您增加它。

聯絡伺服器的支援團隊,告訴他們您看到了WordPress網站遭遇max_execution_time錯誤。然後,詢問您當前的最大執行時間是多少。最後,要求他們增加您的限制,最好是在60到300之間。請記住,您應該刪除任何需要更長時間的外掛或主題。

小結

WordPress發生max_execution_time錯誤是由於PHP指令碼緩慢而發生的,通常出現在外掛、主題和偶爾的WordPress版本更新中。

您可能會在WordPress儀表盤中看到此錯誤,以及前端的潛在“技術問題”訊息以及來自WordPress的有關情況的電子郵件。

這是一個超級常見的錯誤。按照我們在此處介紹的步驟,您可以在幾分鐘內讓您的網站再次正常執行。

評論留言