برای مشاوره رایگان و ثبت سفارش با ما تماس بگیرید.

خطای 500 Internal server error

برطرف کردن خطای 500 internal server error
در این نوشته بخوانید

خطای 500 internal server error (خطای 500 سرور) یکی از خطاهای رایج در سطح اینترنت است.این خطا به وب سایت های وردپرسی محدود نمی‌شود و امکان دارد برای هر سایتی که روی وب سرور قرار دارد رخ بدهد.

500 internal server error
چگونگی رخ دادن خطای 500 internal server error

همان‌گونه که درمورد خطای 503 اعلام کردیم،پیدا کردن دلیل و منشأ این خطاها به دلیل اینکه در متن خطا توضیحات خاصی ارائه نشده است، دشوار است.از متن این خطاها فقط می شود اینگونه استنباط کرد که چیزی در سایت درست کار نمی کند!دقیقا شبیه به بیماری که بدون اعلام محل درد از پزشک میخواهد آن را درمان کند!

در نگاه اول برطرف کردن این خطا سخت به نظر می‌رسد ، اما با طی مراحل زیر می‌توان ریشه خطا را در یک وب سایت وردپرسی پیدا کرد و آن را برطرف نمود.

خطای 500 internal server error چیست؟

internal server error همان گونه که از عنوان خطا مشخص است، خطایی در سطح سرور است و زمانی رخ می دهد که سرور توانایی نمایش صفحه درخواستی کاربر را نداشته باشد.

شما وقتی آدرس یک صفحه را در مرورگر خود وارد می‌کنید در واقع درخواستی برای نمایش آن را به سرور ارسال می‌کنید. زمانی که به هر دلیلی سرور قادر به نمایش صفحه ی درخواستی شما را نداشته باشد ، با خطای 500 internal server error مواجه خواهید شد.

دلیل رخ دادن خطای 500 سرور در وردپرس چیست؟

تصور کنید وب سایت شما درست تا همین چند روز پیش عملکرد درستی داشته است ولی به یک باره زمانی که یکی از صفحات آن را درخواست می‌کنید با این خطا مواجه می‌شوید، حتما این سوال برای شما پیش خواهد آمد که دلیل مشاهده این پیغام خطا جیست؟ به طور کلی دلایل متفاوتی می‌تواند باعث بروز این خطا شود، کار نکردن صحیح پوسته فعال یا افزونه ها ، خرابی فایل .htaccess و محدودیت حافظه PHP می‌تواند از دلایل وقوع آن باشد.

چگونه خطای 500 internal server error را در وردپرس برطرف کنیم؟

با طی کردن مراحل زیر می توانید علت بروز خطا در وب سایت خود را شناسایی کرده و آن را برطرف کنید.

پیشنهاد پالت به شما این است که پیش از انجام هرگونه تغییری در وب سایت خود از داده هایتان نسخه پشتیبان تهیه کنید.

1 – خرابی فایل htaccess

در اولین اقدام زمانی که با خطای internal server error مواجه می‌شوید باید فایل .htaccess خود را بررسی کنید.

برای این کار ، از طریق مدیر فایل سی پنل یا نرم افزار FTP خود وارد پوشه public_html شوید.فایل htaccesss در همین پوشه قابل دسترسی است(در صورتی که آن را مشاهده نمی‌کنید، روی Setting کلیک کنید، و تیک Show Hidden Files(dotfiles) را فعال کنید) روی فایل کلیک راست کرده، Rename را بزنید و نام فایل را به دلخواد تغییر دهید(مثلا .htaccess_old)

زمانی که تغییر نام فایل را انجام دادید ، مجددا تلاش کنید تا به یکی از صفحات سایت خود دسترسی داشته باشید، اگر خطا برطرف شده بود ، مشکل از خرابی فایل htaccess شما بوده است.

پیش از اینکه اقدام دیگری در سایت خود انجام دهید، وارد تظیمات-> پیوند های یکتا در پیشخوان وردپرس خود شوید و بدون انجام هیچ تغییری، دکمه “ذخیره تغییرات ” را بزنید. این کار یک فایل htaccess  جدید برای وب سایت شما ایجاد خواهد کرد و کدهای لازم را اضافه می‌کند تا صفحات یا نوشته های شما با خطای 404 مواجه نشوند.

ورود به تنظیمات پیوند های یکتا
ورود به تنظیمات پیوند های یکتا در پیشخوان وردپرس

در صورتی که این کار خطای 500 سایت شما را برطرف نکرد، در ادامه این مقاله همراه ما باشید تا راه حل های دیگر را با هم بررسی کنیم.

2 – افزایش محدودیت حافظه PHP

گاهی اوقات اگر تلاش کنید بیشتر از مقداری که برای حافظه PHP که مشخص کردید، از منابع استفاده کنید با این پیغام خطا مواجه خواهید شد.در صورتی که تنها زمانی که قصد ورود یا بارگذاری عکس در سایت وردپرسی خود را دارید با خطای 500 internal server error مواجه می‌شوید می‌توانید با انجام یکی از روش های زیر مقدار حافظه خود را افزایش دهید:

از طریق فایل php.ini

برای افزایش حافظه PHP از این روش مراحل زیر را انجام دهید:

  • یک فایل خالی به نام php.ini ایجاد کنید.
  • این کد را در آن کپی کنید : memory=128MB
  •  فایل را ذخیره کنید
  •  فایل را در پوشه wp-admin سایت خود آپلود کنید.

فایل functions.php

فایل functions.php در پوشه مربوط به پوسته فعال شما قابل دسترسی است.به سادگی از طریق مدیر فایل سی پنل خود به مسیر wp-content/themes و از آن به پوشه تم فعال خود رفته و فایل functions.php را پیدا کنید. با کلیک راست روی فایل و زدن Edit میتوانید فایل مورد نظر را ویرایش کنید.کدهای زیر را بعد از تگ باز شده php این فایل اضافه کرده و ذخیره کنید:

@ini_set('upload_max_size' , '64M');
@ini_set('post_max_size', '64M');
@ini_set('max_execution_time', '300');

 

فایل htaccess

میزان حافظه PHP را به سادگی می‌توان از طریق فایل htaccess  هم افزایش داد.برای این کار کافیست کدهای زیر را به این فایل اضافه کنید.(با کلیک راست روی فایل و زدن Edit میتوانید فایل مورد نظر را ویرایش کنید.)

php_value upload_max_filesize 64M
php_value post_max_size 64M

فایل wp-config.php

یکی دیگر از روش های افزایش حافظه php  از طریق اضافه کردن کد های زیر به فایل wp-config.php است.این فایل در پوشه public_html قابل دسترسی است. .(با کلیک راست روی فایل و زدن Edit میتوانید فایل مورد نظر را ویرایش کنید.)

define('WP_MEMORY_LIMIT', '128M');

ini_set('post_max_size', '64M');

ini_set('upload_max_filesize', '64M')

بسیاری از کاربران با انجام دادن مراحل بالا موفق به حل مشکل خود شده اند.

در صورتی که افزایش حافظه PHP خطای 500 internal server error سایت شما را برطرف نکرد ،روش هایی که در ادامه مورد بررسی قرار می‌دهیم را روی سایت وردپرسی خود امتحان کنید.

3 – غیر فعال سازی تمام افزونه ها

در صورتی که روش های بالا مشکل سایت شما را برطرف نکرد ، ممکن است مشکل از عملکرد نامناسب یکی از افزونه های سایت باشد.علاوه بر این ممکن است رفتار برخی افزونه ها با هم تداخل داشته باشد و باعث وقوع مشکل فوق شده باشد.

تنها راهی که می‌توان تشخیص داد مشکل از رفتار نامناسب افزونه ها بوده است یا خیر این است که تمام افزونه های سایت را غیر فعال کنید.

برای این کار از طریق FTP یا File Manager سی پنل خود به پوشه wp-content بروید، روی پوشه plugins راست کلیک کنید و با زدن Rename نام آن را تغییر دهید(به طور مثال قرار دهید plugins-old)

سپس یک پوشه جدید ایجاد کنید و نام آن را plugins قرار دهید تا مشکلی در اجرای وردپرس ایجاد نشود.

دوباره برای دسترسی به سایت خود تلاش کنید.در صورتی که مشکل برطرف شده بود، ایراد از عملکرد یکی از افزونه ها یا عملکرد چند افزونه در کنار یکدیگر خواهد بود.

در ادامه به سی پنل خود بازگردید، پوشه plugins که ایجاد کرده بودید را حذف کنید، و نام plugins-old را به plugins بازگردانید. در این حالت تمام افزونه های شما از طریق پیشخوان وردپرس در دسترس هستند ولی غیر فعال هستند.سپس از طریق پیشخوان، یکی یکی افزونه ها را فعال کنید تا متوجه شوید دلیل ایجاد خطای internal server error کدام یک از افزونه های سایت شما بوده است ،آن را حذف و با افزونه مناسب جایگزین کنید.

4 – آپلود مجدد فایل های وردپرس

در صورتی که غیر فعال سازی افزونه ها نیز خطای 500 internal server error را برطرف نکرد، شما باید فایل های اصلی وردپرس را دوباره روی سرور خود نصب کنید. در این حالت اگر فایلی آسیب دیده باشد، مشکل برطرف خواهد شد.

دقت داشته باشید که اینکار اطلاعات سایت شما را حذف نخواهد کرد و فقط یک نسخه بدون نقص وردپرس را در سایت شما قرار خواهد داد . در برخی از موارد انجام دادن این کار باعث رفع خطای 500 سایت شده است.

برای انجام دادن این کار با مراجعه به سایت وردپرس ، آخرین نسخه یا نسخه مورد نظر خود را دانلود کنید،آن را از حالت فشرده خارج کنید و با استفاده از FTP یا مدیر فایل سی پنل خود پوشه های wp-admin و wp-includes آن را داخل پوشه public_html خود آپلود کنید تا جایگزین فایل های قبلی شود.

آپلود وردپرس
فایل های وردپرسی که باید در سرور بارگذاری کنید

انجام دادن این کار در صورتی که فایل های خراب وردپرس باعث بروز خطا شده باشند مشکل را برطرف خواهد کرد.

5 – ارتباط با سرویس دهنده هاست

در صورتی که تمامی روش های بالا باعث رفع مشکل سایت شما نشد، باید با سرویس دهنده هاست خود ارتباط برقرار کنید و از آنها کمک بخواهید.آن ها با بررسی خطاهای شما متوجه دلیل ایجاد خطای internal server error خواهند شد و آن را برطرف می‌کنند.

بیشتر بخوانید: برترین شرکت های هاستینگ ایرانی

بیشتر بخوانید

4 دیدگاه دربارهٔ «خطای 500 Internal server error»

    1. گروه طراحی سایت پالت

      ممنونم دوست عزیز.. امیدوارم دیگر مطالبمون هم مورد توجهتون قرار بگیره

    1. گروه طراحی سایت پالت

      دوست عزیز آیا با آدرس این صفحات رو تغییر دادین (redirect) ؟
      از افزونه yoast seo استفاده میکنین؟

دیدگاه‌ خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

سلام!

در صورتی که پاسخ سوال خود را پیدا نکردید ، با کارشناسان پشتیبانی ما از طریق واتساپ در تماس باشید