آموزش رفع خطای ۵۰۰ در وردپرس
خطای 500 وردپرس معمولا بخاطر ایجاد اشتباه و اختلال در کدهای افزونه وردپرس، قالب وردپرس، توابع وردپرس، فایل htaccess. و… رخ میده و صرفا محدود به وردپرس نیست. این خطا سمت سرور بوده و در هر سیستم مدیریت محتوای اختصاصی یا رایگان مثل وردپرس رخ خواهد داد. خطای Internal Server Error 500 معمولا در اکثر موارد بخاطر تغییر در سطح دسترسی پوشه یا فایلهای هاست رخ خواهد داد.
در این آموزش از وبمستر وردپرس به معرفی راهکارهایی برای رفع خطای 500 در وردپرس میپردازم که با استفاده از این موارد میتونید هر زمان که با خطای Internal Server Error 500 در وردپرس مواجه شدید، در کوتاهترین زمان ممکن این مشکل را برطرف کنید.
آموزش رفع خطای http error 500 در وردپرس
وقتی خطای 500 در وردپرس رخ میده میتونه به دلایل مختلفی مثل خطای برنامه نویسی، تداخل در کدهای برنامه نویسی، تغییر پرمیژن فایلها در هاست، تغییر ساختار فایل htaccess. و… به وجود بیاد. معمولا با رخ دادن این خطا پیغامهایی مثل موارد زیر را میبینیم که با باز کردن هر یک از صفحات بر اساس نوع سرور و هاست وردپرس نمایش داده میشه.
Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request. Please contact the server administrator, webmaster@example.com and inform them of the time the error occurred, and anything you might have done that may have caused the error. More information about this error may be available in the server error log. Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request
در برخی موارد هم ممکنه صرفا با ورود به صفحه پیشخوان وردپرس و در پنل مدیریت وردپرس با خطای 500 در سایت مواجه شوید. به هر حال در هر یک از صفحات که با خطای http error 500 در وردپرس مواجه شدید میتونید با راهکارهای معرفی شده مشکل را برطرف کنید.
روش اول: خطای 500 وردپرس به دلیل فایل خراب htaccess.
در این روش خطای 500 وردپرس بخاطر خراب بودن فایل htaccess. رخ میده که برای رفع مشکل باید فایل htaccess. هاست وردپرس را تعمیر کنید. برای این کار ابتدا وارد هاست شده و روی گزینه File Manager کلیک کنید تا به صفحه مدیریت فایلهای هاست دسترسی پیدا کنید.
در این مرحله باید به مسیر public_html مراجعه کرده و در مسیری که اقدام به نصب وردپرس در هاست سی پنل کردید، به دنبال فایلی با نام htaccess. بگردید. این فایل همونطوری که از اسمش مشخصه جزو فایلهای مخفی هست. بنابراین در صورت استفاده از هاست سی پنل روی دکمه Settings که در بالای صفحه fila manager قرار داره کلیک کنید تا پنجره زیر نمایش داده شده و در نهایت بعد از فعال کردن تیک گزینه Show Hidden Files روی دکمه SAVE کلیک کنید.
با ذخیره کردن تنظیمات، حالا میتونید فایل htaccess. وردپرس را در هاست سی پنل مشاهده کنید. در این مرحله کافیه روی فایل راست کلیک کرده و گزینه Rename را انتخاب کنید. در این صورت پنجرهای براتون باز میشه که باید نام فایل را به یک نام دلخواه تغییر دهید. بنابراین نام فایل را به نامی مثل htaccess-old. تغییر داده و روی دکمه Save ذخیره کنید. بعد از تغییر نام فایل آدرس صفحهای که با خطای 500 در وردپرس مواجه شدید را باز کرده و بررسی کنید که مشکل برطرف شده است یا خیر.
در صورتی که مشکل برطرف شده بود کافیه حالا به پیشخوان وردپرس مراجعه کرده و به مسیر تنظیمات> پیوندهای یکتا مراجعه کنید. حالا یک بار روی دکمه ذخیره تغییرات کلیک کنید تا فایل جدید htaccess. به صورت خودکار ساخته شده و مشکل internal server error در وردپرس برطرف بشه. در صورتی که همچنان مشکل پابرجا بود، باید از راهکارهای بعدی استفاده کنید.
روش دوم: تغییر دسترسی پوشهها و فایلهای وردپرس
هر پوشه و فایلی در وردپرس و هر نوع سیستم مدیریت محتوا دارای یک سطح دسترسی قابل خواندن، مشاهده و نوشتن است. در صورتی که پرمیژن یا سطح دسترسی هر یک از فایلهای وردپرس تغییری پیدا کنه دسترسی بهش تغییر خواهد یافت. در این صورت سایت به درستی لود نشده و ممکنه با خطای 500 در وردپرس مواجه بشید. بنابراین باید مشابه تصویر زیر بررسی کنید و ببینید که سطح دسترسی برای فایلها و پوشههای وردپرس در چه سطحی قرار دارند.
در سیستم مدیریت محتوای وردپرس سطح دسترسی برای پوشهها و فایلهای هاست باید به صورت زیر باشند.
- سطح دسترسی برای فایلها: 644
- سطح دسترسی برای پوشهها: 755
- سطح دسترسی فایل htaccess هاست: 444
برای تغییر سطح دسترسی در هاست سی پنل مشابه تصویر باید ابتدا روی پوشه یا فایل راست کلیک کرده و سپس گزینه Change Permissions را انتخاب کنید. در این مرحله پنجرهای نمایش داده میشه که میتونید سطح دسترسی را برای فایل یا پوشه مورد نظر بر اساس اعداد بالا انتخاب کنید.
برای تغییر سطح دسترسی همونطور که میبینید کافیه تیک گزینههای موجود در ردیفهای Read، Write و Execute را برای هر یک از حالتهای user، Group و worlds فعال یا غیر فعال کنید تا در نهایت در ردیف permissions عددی مشابه تصویر نمایش داده شود. این عدد همان سطح دسترسی برای پوشه یا فایل خواهد بود. پس اگر خطای 500 وردپرس از سطح دسترسی باشه باید مقادیر مشخص شده برای فایلهای وردپرس و پوشهها بر اساس مقادیری که در بالا ذکر شده باشند، در صورتی که چیزی غیر از این بود با تغییر دادنش مشکل برطرف خواهد شد.
روش سوم: عبور از محدودیت حافظه PHP در هاست
مشکل بعدی که ممکنه باعث بروز خطای 500 وردپرس بشه بخاطر محدودیت در حافظه PHP خواهد بود که با افزایش دادن مقدار حافظه php وردپرس میتونید مشکل خطای داخلی سرور در وردپرس را برطرف کنید. برای این منظور وارد مسیر public_html در هاست شده و به دنبال فایل wp-config.php بگردید. سپس روی فایل راست کلیک کرده و گزینه Edit را برای ویرایش فایل انتخاب کنید. در نهایت کد زیر را در بخش define کدهای موجود در این فایل قرار داده و روی دکمه save کلیک کنید تا فایل ذخیره بشه.
define('WP_MEMORY_LIMIT', '512M');
دقت داشته باشید که کد بالا در فایل wp-config.php درست باید در بالای خط * That’s all, stop editing! Happy blogging. */ قرار گرفته باشه. همچنین قبل از ایجاد هرگونه تغییر و ویرایش در این فایل دقت کنید یک نسخه کپی از این فایل در جایی ذخیره کنید که اگر اشتباهی رخ داد مشکل را سختتر نکنید.
روش چهارم: غیرفعال کردن کلیه افزونهها
اگر با روشهای بالا موفق به حل مشکل خطای داخلی سرور در وردپرس نشدید ممکنه خطا از افزونههای وردپرس باشه که اخیرا نصب یا بروزرسانی کردید. برای این منظور سعی کنید آخرین افزونهای را که نصب یا بروزرسانی کردید را غیرفعال کنید. برای این کار میتونید از مقاله آموزش نصب افزونه در وردپرس استفاده کنید. اما اگر با این روش همچنان مشکل پابرجا بود باید کلیه افزونهها را غیرفعال کنید. برای غیرفعال کردن افزونهها در وردپرس دو راه دارید.
- در صورتی که به پیشخوان وردپرس دسترسی دارید و خطای 500 وردپرس در پیشخوان وردپرس نمایش داده نمیشه وارد پیشخوان شده و به مسیر افزونهها مراجعه کنید. سپس تیک کلیه افزونههای فعال را انتخاب کرده و در نهایت از منوی کارهای دسته جمعی گزینه غیرفعال کردن را انتخاب کنید تا همه افزونهها غیرفعال شده و سایت را بررسی کنید.
- اما اگر دسترسی به پیشخوان وردپرس ندارید وارد File Manager در هاست شده و به مسیر public_html/wp-content مراجعه کنید. در این مسیر پوشهای با نام plugins وجود داره که با تغییر نام موقت پوشه کلیه افزونهها غیرفعال خواهند شد. بنابراین روی پوشه plugins راست کلیک کرده و گزینه Rename را انتخاب کنید. سپس یک نام دلخواه مثل plugins-old را در پنجره باز شده انتخاب کرده و روی دکمه Save کلیک کنید. مجددا همین کار را تکرار کرده و نام اصلی پوشه plugins را برگردانید. حالا افزونهها غیرفعال شدند و میتونید سایت را برای بررسی مشکل خطای داخلی سرور بررسی کنید.
روش پنجم: استفاده از قالب پیشفرض وردپرس
گاهی وقتها ممکنه خطای 500 وردپرس بخاطر قالبی که استفاده میکنید باشه که برای اطمینان و راهکار نهایی میتونید قالب فعلی را غیرفعال کرده و از یکی از قالبهای پیشفرض وردپرس استفاده کنید. اگر به پیشخوان وردپرس دسترسی دارید به مسیر نمایش> پوستهها مراجعه کرده و یکی از قالبهای وردپرس مثل 2014، 2015، 2016 یا 2017 را انتخاب کرده و روی دکمه فعال کردن کلیک کنید.
اما اگر دسترسی به پیشخوان وردپرس ندارید برای غیرفعال کردن قالب فعلی وارد هاست شده و به مسیر public_html/wp-content/themes در File Manager مراجعه کنید. حالا پوشه قالبی که در حال استفاده ازش هستید را انتخاب کرده و روی اون راست کلیک کنید. گزینه Rename را انتخاب کرده و در پنجره باز شده نام دلخواهی برای پوشه قالب انتخاب کرده و ذخیره کنید. در این صورت قالب غیرفعال شده و یکی از قالبهای پیشفرض وردپرس به عنوان قالب سایت فعال خواهد شد. حالا میتونید سایت را بررسی کنید و ببینید که آیا همچنان خطای 500 در سایت نمایش داده میشه یا خیر!
دقت داشته باشید که در این روش حتما باید یکی از قالبهای پیشفرض وردپرس در سایت وجود داشته باشند. پس اگر پوشهای به جز پوشه قالب در این مسیر از هاست وجود نداره، قبل از انجام اینکار به آدرس fa.wordpress.org مراجعه کنید. سپس از داخل فایل zip دانلود شده به مسیر wp-content/themes مراجعه کرده و یکی از پوشهها را در هاست آپلود کنید.
در نهایت اگر با استفاده از روشهای پنجگانه فوق موفق به رفع خطای 500 در وردپرس نشدید به میزبانی هاستتون تیکت ارسال کرده و درخواست کنید که سایت را بررسی کرده و مشکل را برطرف کنند.
امیدوارم این آموزش هم مورد توجه و پسندتون قرار گرفته باشه و با استفاده از این مقاله تونسته باشید خطای داخلی سرور در وردپرس و مشکل نمایش خطای internal server error 500 را در وردپرس برطرف کنید. اگر در رابطه با این آموزش سوال یا مشکلی براتون پیش اومد از بخش دیدگاهها ارسال کنید تا در کوتاهترین زمان ممکن پاسخگوی شما باشم.
ممنون از راهنمایی تون
مشکل سایت من حل شد
ممنون راه حل های ساده ای بود اما مشکل منو حل کرد
عالی بودین، مشکل حل شد
مرسی امیر جان، خوشحالم که مشکلتون برطرف شده :)
سلام وقتتون بخیر
من سایت مپ افزونه یوآست رو که فعال میکنم ،موقع دیدن سایت مپ سایت خطای “سایت با مشکل مواجه شده است “یا خطای ۵۰۰ میده، جگونه میتوانم رفع کنم ؟
سلام،
میزان حافظه php رو افزایش بدین، اگر برطرف نشد ممکنه از افزونههای کش وردپرس باشه.
سلام
تشکر از سایت فوق العاده شما، مشکل از محدودیت حافظه PHP بود که با راهکار شما برطرف شد.
سلام،
خوشحالم که مفید بوده و مشکلتون برطرف شده :)
ممنون روش سوم کارمو حل کرد
سلام اما هنوز مشکل سایت من برطرف نشده دقیقا نمی دونم مشکلش از کجاست همه ی راه حل هاتونو رفتم اما بازم درست نشد اگ میتونید کمک کنید ممنون میشم
سلام،
با پشتیبانی هاست مطرح کنید که سایر موارد رو بررسی کنند.
سلام وب سایت من هم همین مشکل رو داشت
مشکل سطح دسترسی به فایل htaccess بود که با راهنمایی های شما برطرف شد و متاسفانه در همه سایت ها نوشته سطح دسترسی فایل htaccessباید ۰۶۴۴ باشد درحالی که اشتباه است و باید مثل شما درست بنویسند که سطح دسترسی htaccess باید ۰۴۴۴ باشد تا موقع بارگزاری و بازدید زیاد ارور نده
بازم ممنون از سایت خوبتون
عالی عالی مرسی