صبر کنید...
نحوه رفع خطای Max_Execution_Time وردپرس
Print
  • 0

خطای max_execution_time وردپرس یک خطای رایج است که اکثر کاربران وردپرس در برخی مواقع هنگام کار با سایت خود با آن مواجه می شوند. خطا مربوط به اجرای ناقص یک اسکریپت PHP به دلیل محدودیت زمانی است.
در این راهنمای عیب‌یابی، یاد خواهید گرفت که اسکریپت‌های PHP چیست، چرا در معرض محدودیت‌های زمانی قرار دارند، و چه مراحلی را باید برای حذف خطای max_execution_time وردپرس از سایت خود انجام دهید.

 

خطای max_execution_time وردپرس چیست؟ چه چیزی باعث آن می شود؟

وردپرس به همراه پلاگین ها و تم ها به زبان برنامه نویسی PHP کدگذاری شده است. این بدان معناست که زمانی که شما یک وب سایت وردپرس را راه اندازی می کنید، اسکریپت های پی اچ پی به طور مداوم اجرا می شوند. به طور پیش فرض، اجرای اسکریپت اغلب در محدودیت زمانی 30 ثانیه ای توسط سرور میزبان شما قرار دارد. برای جلوگیری از استفاده بیش از حد از منابع سرور انجام می شود.

این عدد در برخی از ارائه دهندگان هاستینگ می تواند بیشتر یا کمتر باشد – اما اکثر هاست ها از پیکربندی پیش فرض 30 ثانیه ای استفاده می کنند. اگر یک اسکریپت در بازه زمانی 30 ثانیه اجرا نشود، تابع خاتمه می یابد و خطای max_execution_time به شما نشان داده می شود. در بیشتر موارد، این خطای خاص زمانی رخ می‌دهد که می‌خواهید یک افزونه یا تم را نصب یا به‌روزرسانی کنید.

خطای max_execution_time وردپرس نیز با پیام های مختلف قابل نمایش است. به عنوان مثال، گاهی اوقات پیامی مانند زیر را در داشبورد وردپرس خود مشاهده می کنید:
Fatal error: Maximum execution time of 30 seconds exceeded
در قسمت فرانت سایت وردپرس شما، این خطا همچنین می تواند به عنوان یک پیام خطای عمومی وردپرس نشان داده شود: The site is experiencing technical difficulties
اکنون که می دانید چرا خطای وردپرس max_execution_time رخ می دهد، بیایید نحوه رفع آن را بیاموزیم.

چگونه خطای max_execution_time وردپرس را برطرف کنیم؟

رفع دائمی
می دانیم که خطای max_execution_time وردپرس به دلیل محدودیت زمانی روی یک اسکریپت PHP رخ می دهد. اما هنوز باید بدانیم چه اسکریپت PHP برای رفع خطا اجرا شده است. در اغلب موارد، افراد هنگام نصب یک افزونه یا یک تم با این خطا مواجه می شوند. این بدان معناست که افزونه یا طرح زمینه باعث ایجاد خطا می شود.
 
محدودیت زمانی اجرای PHP که توسط ارائه دهنده هاست تعیین شده است برای اینکه اکثر افزونه ها و تم ها به درستی کار کنند کافی است. اما پلاگین‌ها و تم‌های دارای کدگذاری ضعیف یا آلوده به بدافزار برای عملکرد به منابع بیشتری نیاز دارند. بنابراین، برای رفع خطای max_execution_time، باید افزونه یا تم را از وب سایت خود حذف کنید و آن را با یک افزونه دیگر جایگزین کنید.
 
اگر بلافاصله پس از نصب یک افزونه یا تم جدید شروع به تجربه خطا کردید، این نشانه بسیار خوبی است که نشان می دهد مشکل از آن اکستنشن است.
به‌روزرسانی‌های متعدد افزونه‌ها و تم‌ها نیز باعث ایجاد خطا می‌شوند. بنابراین توصیه می‌کنیم از به‌روزرسانی‌های انبوه خودداری کنید و به‌روزرسانی‌ها را یکی یکی پیاده‌سازی کنید.
خود خطا ممکن است یک نام فایل داشته باشد که به شما سرنخ هایی از علت آن را می دهد. وردپرس (اگر نسخه 5.2 یا بالاتر را نصب کرده اید) ممکن است برای شما ایمیلی ارسال کرده باشد که نشان می دهد کدام افزونه، موضوع یا نرم افزار باعث ایجاد خطا شده است.
 
آنها همچنین یک لینک ویژه برای شما ارسال می کردند که با استفاده از آن می توانید سایت خود را در حالت بازیابی باز کنید. حالت بازیابی زمانی لازم است که سایت شما به دلیل یک خطای مهلک از کار بیفتد. اما این خطای خاص، اگرچه یک خطای کشنده نامیده می شود، ولی مانع از عملکرد عادی سایت شما نمی شود. بنابراین برای حذف افزونه یا تم نیازی به دسترسی به حالت بازیابی ندارید.
 
رفع موقت
یک اصلاح موقت برای خطای max_execution_time وردپرس شامل افزایش حداکثر زمان اجرای PHP است. برای انجام این کار می توانید از یکی از چهار روش زیر استفاده کنید:
  • یک افزونه اختصاصی
  • فایل wp-config.php
  • htaccess
  • php.ini
با این حال، شایان ذکر است که موفقیت این روش ها تا حدی به محیط میزبانی شما و نحوه پیکربندی آن بستگی دارد.
 
روش 1: زمان اجرای PHP را با استفاده از یک افزونه افزایش دهید
در حالی که چند افزونه در مخزن وردپرس وجود دارد که به شما امکان می دهد زمان اجرای PHP را افزایش دهید، پیشنهاد می کنیم از افزونه WP Tools توسط Bill Minozzi استفاده کنید زیرا بطور مرتب بروز میشود.
 
WP Tools را دانلود کنید و آن را در وب سایت وردپرس خود نصب کنید. به محض انجام این کار، گزینه WP Tools در منوی داشبورد شما ظاهر می شود.
به WP Tools → Settings → General Settings بروید و باید بتوانید گزینه ای به نام Add Max Execution Time Limit را ببینید.
محدودیت اجرای فعلی شما را نشان می دهد که می تواند از منوی کشویی به 120 ثانیه افزایش یابد. افزونه یا قالبی را که باعث ایجاد خطا شده است را به روز یا نصب کنید. اگر همچنان خطا را نشان می دهد، احتمالاً باید محدودیت زمانی را به 300 ثانیه افزایش دهید.
 
این کار را می توان با استفاده از افزونه WP Tools انجام داد، اما باید آن را به نسخه پریمیوم افزونه ارتقا دهید. که توصیه می کنیم در عوض، محدودیت زمانی را به صورت دستی افزایش دهید. در چند بخش بعدی به روش دستی پرداخته ایم.
 
روش 2: زمان اجرای PHP را با استفاده از wp-config.php افزایش دهید
می توانید فایل wp-config.php سایت خود را با استفاده از مدیریت فایل cPanel تغییر دهید. اولین کاری که باید انجام دهید این است که از وب سایت خود یک نسخه پشتیبان تهیه کنید. این امر بسیار مهم است. زیرا شما در یک فایل مهم تغییراتی ایجاد می کنید و اگر مشکلی پیش بیاید، ممکن است در نهایت سایت خود را خراب کنید. پشتیبان شبکه ایمنی شما خواهد بود. وارد سی پنل خود شوید.
 
سپس File Manager را باز کنید، به پوشه public_html بروید و فایل wp-config.php را در آن پوشه پیدا خواهید کرد. روی فایل wp-config کلیک راست کرده و دکمه Edit را انتخاب کنید.
تا انتهای فایل به پایین بروید و درست بالای خط "/* That’s all, stop editing! Happy blogging. */” این کد را وارد کنید:
;set_time_limit(300)
دکمه Save Changes را زده و تب را ببندید.
 
روش 3: زمان اجرای PHP را با استفاده از htaccess افزایش دهید
اگر وب سرور شما از htaccess. (Apache و LiteSpeed) پشتیبانی می کند، همچنین می توانید با استفاده از فایل htaccess، زمان اجرای PHP را افزایش دهید.
می توانید با باز کردن حساب میزبانی خود و رفتن به cPanel → File Manager → public_html → .htaccess به فایل htaccess دسترسی پیدا کنید. روی فایل کلیک راست کرده و دکمه Edit را بزنید.
سپس کد زیر را در انتهای فایل وارد کنید:
php_value max_execution_time 300
تغییرات خود را ذخیره کرده و از فایل خارج شوید.
 
روش 4: زمان اجرای PHP را با استفاده از php.ini افزایش دهید
وارد حساب هاست خود شوید و به cPanel → File Manager → public_html → php.ini بروید. فایل را با کلیک راست روی آن و انتخاب دکمه Edit ویرایش کنید.
به انتهای فایل بروید، کد زیر را وارد کنید و تغییرات خود را ذخیره کنید:
max_execution_time = 300
اگر فایل php.ini را مشاهده نمیکنید، ممکن است لازم باشد فایل های مخفی را فعال کنید. یا، میزبان شما ممکن است یک ابزار ویرایشگر php.ini جداگانه ارائه دهد.

Was this answer helpful?