حل خطای Internal Server Error 500 در وردپرس [آموزش ویدئویی]

این مقاله روش‌های رفع خطای Internal Server Error 500 در وردپرس را گام‌به‌گام آموزش می‌دهد. از پاک‌سازی کش مرورگر و وردپرس، بررسی فایل htaccess، افزایش حافظه PHP، غیرفعال‌سازی افزونه‌ها و قالب، تا ریست فایل‌های اصلی، Debug Logs و نکات نهایی، همه ابزارهای برطرف‌سازی خطای 500 را خواهید آموخت.
0
نحوه رفع خطای Internal Server Error 500 در وردپرس

آیا شما با خطای Internal Server Error 500 در وردپرس مواجه هستید؟ در این صورت با ما همراه باشید تا بصورت کامل همه روش های حل خطای Internal Server Error 500 را با هم بررسی نماییم.

با آموزش برطرف کردن خطای 500 سرور داخلی در وردپرس یا به عبارت دیگر خطای Internal Server Error 500 در وردپرس در خدمت شما هستیم.

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

خطای Internal Server Error 500 چیست؟

خطای Internal Server Error 500 یکی از خطاهای رایج سرور وب است. این خطا به وب‌سایت‌های وردپرس محدود نیست و ممکن است با هر وب‌سایتی رخ دهد. نام دیگر این خطا، خطای داخلی سرور 500 است.

عدد 500 در پیام خطا به صورت فنی یک کد خطای HTTP است که جستجوی آن تنها توضیحات استاندارد آن را نشان می‌دهد:

“کد پاسخ 500 خطای داخلی سرور (Internal Server Error 500) به معنای این است که سرور با یک شرایط غیرمنتظره ای مواجه شده است که باعث جلوگیری از برآورده شدن و یا اجرای درخواست شده است.”

این پیام خطای عمومی است که به معنای عدم توانایی سرور برای نمایش پیغام خطا مناسب و توضیحات کاملتر است. زمانی که عاملی باعث نمایش این مشکل می شود این صفحه خطای نمایش داده می شود. البته بستگی به نرم‌افزار سرور وب (آپاچی یا انجین‌اکس) که وب‌سایت شما استفاده می‌کند و مرورگر شما هم دارد.

در تصویر زیر، یک نمونه از خطای Internal Server Error 500 که مربوط به وب سرور آپاچی است را مشاهده می‌کنید.

خطای Internal Server Error 500 در وب سرور آپاچی
خطای Internal Server Error 500 در وب سرور آپاچی

صفحه خطا Internal Server Error 500 ممکن است با مرورگر گوگل کروم و در صورت استفاده از انجین‌ایکس، شکل متفاوتی داشته باشد.

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

خطای Internal Server Error 500 در وب سرور انجین ایکس (Nginx)
خطای Internal Server Error 500 در وب سرور انجین ایکس (Nginx)

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

برطرف کردن خطا های داخلی سرور ( خطای Internal Server Error 500 ) به وجود آمده دقیقا مانند این است که شما به یک دکتر مراجعه کنید و بدون اینکه به او بگویید کجای بدن شما درد میکند از او بخواهید که بیماری شما را علاج نماید.

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

علل ایجاد خطای داخلی سرور Internal Server Error 500 در وردپرس (آموزش ویدئویی)

خطای داخلی سرور در وردپرس (Internal Server Error 500 ) معمولا به دلیل خرابی فایل htaccess وجود پلاگینهای با کد های ضعیف و یا مشکل در قالب فعال وردپرس شما اتفاق میافتد.

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

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

با شناخت این حالت ها حالا زمان آن رسیده که نگاهی به نحوه عیب یابی خطای Internal Server Error 500 در وردپرس بیندازیم.

حل خطای Internal Server Error 500 در وردپرس

قبل از اینکه شروع به رفع کردن خطای Internal Server Error 500 در وردپرس کنید، مطمئن شوید که یک نسخه پشتیبان کامل وردپرس از وبسایت خود دارید. اگر به بخش مدیریتی پیشخوان وردپرس خود دسترسی دارید می توانید با استفاده از یک افزونه پشتیبانی وردپرس یک پشتیبان کامل از وب سایت خود تهیه کنید.

ما توصیه می کنیم که افزونه Duplicator برای رسیدگی به این موضوع استفاده کنید.

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

پس از انجام این مورد حال می‌توانید برای عیب یابی و رفع خطای سرور داخلی وب سایت خود مراحل زیر را دنبال کنید.

کش وردپرس و بروز خود را پاک کنید

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

به این معنی که ممکن است عملاً مشکلی اصلاً در سایت شما از بابت خطای Internal Server Error 500 وجود نداشته باشد و یک اختلال لحظه ای باعث نمایش این خطا و کش شدن آن شده باشد.

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

این کار باعث می‌شود که هنگام بارگیری صفحه بعدی، مرورگر بتواند به سرعت از حافظه کش استفاده کند و صفحه را بهتر بارگیری کند بدون اینکه دوباره به سرور وب برود.

حال برای خالی کردن کش مرورگر، باید از کلید های کنترل + F5  و یا روش زیر استفاده کرد.

پاک کردن کش مرورگر
پاک کردن کش مرورگر

پس از این مرحله اگر به قسمت مدیریت وب سایت وردپرسی خود دسترسی دارید می‌توانید به صفحه تنظیمات افزونه ها مراجعه نمایید و کش وردپرس خود را خالی کنید.

بررسی فایل خراب شده ‏htaccess

فایل htaccess یک فایل پیکربندی سرور است که برای تنظیم کلی ریدایرکت ها یا تغییر مسیر ها توسط وردپرس مورد استفاده قرار می گیرد. یکی از رایج ترین دلایل رخ دادن خطاهای سرور داخلی یا همان خطای Internal Server Error 500، خراب بودن فایل htaccess می باشد.

بسیاری از مواقع مشکل در کدهای فایل htaccess باعث بروز خطای Internal Server Error 500 است.

ساده ترین راه حلی که برای رفع کردن این مشکل وجود دارد این است که از طریق صفحه تنظیمات (setting) به صفحه پیوند های یکتا (permalinks) در بخش مدیریت وردپرس مراجعه نمایید و سپس روی دکمه ذخیره سازی تغییرات (save changes) بدون اینکه هیچ گونه تغییری ایجاد کرده باشید کلیک کنید.

ممکن است به پیشخوان وردپرس برای انجام این کار دسترسی نداشته باشید ، در این صورت باید فایل 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

این کد های پیشفرض است و پس از حل مشکل به اینصورت مجدد باید بعد از ورود به بخش مدیریت وردپرس، در بخش تنظیمات > پیوندهای یکتا > یکبار بر روی گزینه ذخیره کلیک کرد.

  • نکته مهم : قبل از ویرایش فایل htaccess ، کدهای داخل فایل htaccess را کپی کرده و در یک فایل txt در محیط ویندوز خود ذخیره نمایید تا در صورت بروز هرگونه مشکلی ، بتوانید کدهای قبلی را برگردانید.

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

افزایش محدودیت حافظه php

در برخی از مواقع ممکن است خطای سرور داخلی وردپرس ( خطای Internal Server Error 500 ) زمانی اتفاق بیفتد که یک اسکریپت از تمامی محدودیت حافظه php استفاده کرده باشد.  به این معنی که تمام حافطه php در حال استفاده از این اسکریپت باشد.

ساده ترین راه حل افزایش محدودیت حافظه php ویرایش کردن فایل wp-config.php می باشد.

اگر شما به عنوان یک مبتدی می خواهید این کار را انجام دهید باید خیلی مراقب باشید. به منظور افزایش دادن این محدودیت باید دستورالعمل های زیر را به دقت دنبال کنید. زیرا حتی کوچکترین اشتباه در فایلهای اصلی وردپرسی می‌تواند تمامی سایت شما را خراب کند. (جای نگرانی البته نیست ، برگرداندن تنظیمات به حالت قبل، مشکل را حل می کند)

پیشنهاد می شود برای افزایش حافظه php یا همان PHP Memory Limit ، از هاست خود درخواست نمایید.

به منظور شروع این کار می‌توانید به سادگی با ویرایش فایل wp-config.php در روت اصلی هاست (منظور پوشه Public_html است) این کار را انجام دهید.

بعد از پیدا کردن فایل wp-config.php ، باید بر روی آن کلیک راست کنید و گزینه Edit یا ویرایش را انتخاب نمایید.

  • قبل از ویرایش این فایل ، یک نسخه از آن دانلود نمایید تا به عنوان بک آپ داشته باشید.
ویرایش فایل wp-config
ویرایش فایل wp-config

درون فایل wp-config.php تنها کافی است که خط کد زیرا بالای خطی که در آن نوشته است that’s all, stop editing! Happy publishing اضافه نمایید.

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

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

  1. یک فایل متنی خالی در کامپیوتر خود ایجاد کنید و نام آن را php.ini بگذارید.
  2. کد مقابل را درون آن کپی کنید memory=256MB
  3. فایل را ذخیره کنید.
  4. با استفاده از FTP  یا بصورت مستقیم فایل را درون پوشه wp-admin آپلود کنید.

اگر افزایش دادن محدودیت حافظه توانست مشکل را برای شما برطرف کند باید بگویم که شما به طور موقت توانسته مشکل را برطرف کنید. در اصل شما باید در اینجا علتی که سبب می‌شود حافظه شما پر شود را پیدا کنید.

پر شدن بیش از حد حافظه شما می‌تواند به دلیل وجود یک افزونه با کد مخرب باشد. یا اینکه این موضوع می‌تواند به علت توابعی که در قالب شما موجود می باشد رخ داده باشد. ما به شما پیشنهاد میکنیم که از شرکت میزبانی وب وردپرس خود بخواهید لاگ هایی که سرور ایجاد کرده است را نگاه کنند و به شما در تشخیص علت دقیق مشکل کمک نمایند.

پر بودن همیشه حافظه رم و php وردپرس، گاهاً بدلیل هک شدن سایت است. چگونه بفهمیم سایت هک شده است؟ راهنمایی برای بررسی هک بودن سایت است.

اگر افزایش دادن محدودیت حافظه php نتواند مشکل را برای شما برطرف کند در این صورت شما باید به دنبال راه حل هایی دیگر برای عیب یابی بیشتر در مورد خطای Internal Server Error 500 باشید.

تمامی افزونه های وردپرس را غیرفعال کنید

اگر هیچ یک از روش‌های بالا به شما جواب نداد و خطای Internal Server Error 500 برطرف نشد می توان احتمال زیادی داد که این خطا توسط یکی از افزونه های نصب شده در وبسایت شما ایجاد شده است.

همچنین ممکن است ترکیبی از پلاگین ها نتوانند با یکدیگر به خوبی کار کنند و باعث به وجود آمدن این مشکل شده باشند. به این مشکل، تداخل افزونه ای می گویند.

اگر می‌توانید به صفحه مدیریتی سایت وردپرس خود مراجعه کنید به راحتی به قسمت صفحه پلاگین‌ها بروید و همه پلاگین های وردپرسی خود را غیر فعال نمایید.

غیر فعال کردن افزونه های وردپرس
غیر فعال کردن افزونه های وردپرس

با این حال اگر قادر به اتصال به صفحه مدیریتی سایت وردپرس خود نیستید می توانید تمامی پلاگین های وردپرس را با استفاده از روش تغییر نام پوشه افزونه ها در هاست غیر فعال کنید. در این پس از وارد شدن به هاست ، باید در مسیر پوشه wp-content ،پوشه پلاگین ها را به plugins.deactivatesd و یا هر نام دیگری بجز plugins تغییر دهید.

وردپرس برای پیدا کردن افزونه ها در پوشه پلاگین به دنبال آنها می گردد. اگر پوشه پلاگین پیدا نشود در نتیجه وردپرس به صورت اتوماتیک همه پلاگین ها را غیر فعال می کند. اکنون می‌توانید از وبسایت خود بازدید نمایید و ببینید که آیا با استفاده از این کار، خطای Internal Server Error 500 سایت شما برطرف شده است یا خیر!

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

اکنون افزونه های شما مجدد فعال می شوند. اما باید بدانید که آنها همچنان غیر فعال هستند. برای فعال کردن آنها باید به وبسایت خود مراجعه کنید و آنها را یکی یکی فعال کنید. تا متوجه شوید که کدام افزونه باعث شده خطای Internal Server Error 500 اتفاق بیفتد.

اگر غیر فعال کردن همه افزونه ها هم نتوانست خطای Internal Server Error 500 وب سایت شما را برطرف کند به شما پیشنهاد می‌کنیم که به خواندن مقاله ادامه دهید.

از یک قالب پیش فرض وردپرس استفاده کنید

یکی از دلایل احتمالی که می تواند سبب بروز خطای Internal Server Error 500 شود برخی از کد هایی است که در قالب وردپرس شما موجود می باشد. برای اینکه متوجه شوید که آیا این موضوع دلیل رخ دادن خطا است، بهتر است قالب خود را به یک قالب پیش فرض وردپرس تغییر دهید.

برای این کار اگر به قسمت مدیریت سایت وردپرسی خود دسترسی دارید می توانید به سادگی به صفحه نمایش » قالب ها بروید. اگر قالب پیش فرضی وجود دارد که از قبل بر روی سایت شما نصب شده است تنها کافی است که بر روی دکمه فعال سازی کلیک کنید. در این حالت قالب شما به قالب پیشفرض تغییر پیدا می نماید.

تغییر قالب برای حل خطای Internal Server Error 500
تغییر قالب برای حل خطای Internal Server Error 500

اگر قالب های پیش فرض روی سایت شما نصب نشده باشد، در این حالت شما میتوانید با انتخاب دکمه افزودن جدید یک قالب پیشفرض را نصب نمایید. قالب هایی مانند (Twenty Twenty-Three, Twenty Twenty-Two) قالب های پیش فرض به حساب می آیند.

در صورتی که خطای Internal Server Error 500 مربوط به قالب شما باشد ، با این روش مشخص می شود.

اما در صورتی که بدلیل خطای Internal Server Error 500 به وردپرس اصلاً دسترسی ندارید ، می توانید قالب فعال را با استفاده از روش تغییر نام پوشه قالب ها در هاست غیر فعال کنید. به این صورت که بعد از وارد شدن به هاست ، باید در مسیر پوشه wp-content ،پوشه قالب ها را به themes.deactivatesd و یا هر نام دیگری بجز themes تغییر دهید.

  • با توجه به اینکه بصورت همزمان فقط یک قالب در سایت فعال است ، می توانید نام پوشه themes را هیچ تغییری ندهید ، فقط وارد پوشه شده و نام قالب خود را با اضافه کردن یک عبارت مانند test به انتهای نام آن قالب، غیر فعال کرده و حل شدن خطای Internal Server Error 500 را بررسی نمایید.

در صورتی که مشکل از قالب بود ، می توانید اکنون وارد پیشخوان وردپرس سایت خود شوید و موقتاً یک قالب دیگر فعال نمایید و این علت مشکل را از پشتیابنی قالب خود سوال نمایید. ممکن است با آپدیت قالب مشکل حل شود.

بعد از این کار و بررسی ، لازم است که تغییرات خود را به حالت قبل برگردانید.

اگر تاکنون نتوانستید مشکل خطای Internal Server Error 500 را برطرف کنید نگران نباشید. هنوز چند کار دیگر وجود دارد که می توانید آن ها را انجام دهید.

آپدیت کردن مجدد فایل های اصلی وردپرس

اگر گزینه افزونه ها و قالب نتوانست خطای Internal Server Error 500 را برطرف کند بهتر است به سراغ پوشه های /wp-admin/ و /wp-includes/ بروید و آنها را از داخل یک وردپرس نصب شده جدید دوباره آپلود کنید.با استفاده از این کار هیچ یک از اطلاعات شما حذف نخواهد شد؛

اما ممکن است فایل خرابی که مسبب ایجاد این خطا شده است جایگزین شود و مشکل حل شود. برای این کار در ابتدا شما باید از وب سایت WordPress.org دیدن نمایید و بر روی دکمه دانلود کلیک کنید.

برای اینکار می توانید از راهنمای آپدیت دستی وردپرس در معرفی روش های آپدیت وردپرس استفاده نمایید.

Debug Logs را در وردپرس بررسی نمایید

وردپرس دارای یک سیستم داخلی برای نگهداری گزارش ها است که از آنها برای اشکال زدایی استفاده می کند. بسته به نوع هاست خود، فایل دیباگ را بررسی نمایید. در فایل Debug Logs کلیه ارور ها و وارنینگ ها ، در مسیری که مشکل ایجاد شده است را ذخیره می کند. به این صورت ممکن است بتوانید دلیل ایجاد خطای Internal Server Error 500 را متوجه شوید.

اگر به قسمت مدیریت وبسایت خود دسترسی ندارید می توانید با استفاده از کد زیر در فایل wp-config.php اشکال زدایی را فعال نمایید.

define( &amp;amp;#039;WP_DEBUG&amp;amp;#039;, true);
define( &amp;amp;#039;WP_DEBUG_LOG&amp;amp;#039;, true);

به محضی که ثبت گزارش ها را فعال کردید می توانید آنها را در هاست خود در پوشه Public_html در فایلی بنام debug.log مشاهده نمایید. در صورتی که در روت اصلی این فایل وجود نداشت برای مشاهده آن کافیست به فولدر /wp-content/ مراجعه کنید.

فعال کردن دیباگ در وردپرس
فعال کردن دیباگ در وردپرس

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

در نتیجه نیازی به مرتفع کردن آنها وجود ندارد. با این حال اگر یک خطای Internal Server Error 500 را در وبسایت خود مشاهده کنید ممکن است شما را به مسیری که بتوانید آن را درست کنید هدایت کنند.

جمع بندی نهایی

اگر تمامی روشهایی که به شما گفتیم را برای برطرف کردن خطای Internal Server Error 500 مرور کردید و هیچ یک از آنها به شما کمک نکرد که این خطا را رفع کنید؛ زمان آن رسیده است که کمک های بیشتری دریافت نمایید.

برای این کار با تیم پشتیبانی میزبانی وب سایت خود تماس بگیرید. آنها می توانند گزارش های سرور را بررسی کنند و علت اصلی خطای Internal Server Error 500 را پیدا کنند.

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

همچنین خدمات ما، عبارت است از

  1. خرید خدمات نصب و پیکربندی SSL
  2. خدمات تخصصی افزایش امنیت وردپرس
  3. خدمات پاکسازی سایت هک شده و ویروسی بصورت تخصصی
  4. خدمات پشتیبانی فنی وردپرس و هاست (اختصاصی)

مقاله خطای Internal Server Error 500 بر گرفته شده از سایت wpbeginner بوده است.

دیدگاهتان را بنویسید

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

این فیلد را تکمیل کنید
این فیلد را تکمیل کنید
لطفاً یک نشانی ایمیل معتبر بنویسید.
برای ادامه باید با شرایط موافقت کنید

keyboard_arrow_up