
۳ اشتباه رایج وردپرسی و راه رفع آنها
وردپرس یک پلتفرم فوقالعاده برای وبلاگنویسی و cms است ، اما هیچ نرمافزاری بی نقص نیست . در این مقاله ۳ مورد از رایجترین خطاهای وردپرس “صفحه نمایش سفید مرگ” ، “خطای داخلی سرور” و “خطای اتصال به پایگاه داده” را بررسی میکنیم.
برخی از نکات موجود در این مقاله میتواند برای رفع خطاهای دیگر نیز به کار رود، بنابراین حتی اگر سایت شما مشکلی ندارد، میتوانید چیزهایی را یاد بگیرید که برای آینده مفید باشند.
صفحه نمایش سفید مرگ
این یکی از نفرت انگیزترین خطاها است و به ۳ دلیل اتفاق میافتد :
-تمام شدن حافظه
– یک افزونه
– یک تم
اگر این صفحه در سایتهای مختلفی که از یک هاست استفاده میکنند ظاهر شود، با خیال راحت میتوانید مطمئن باشید که علت آن شرکت ارائه دهنده هاست است . در غیر این صورت، مطمئن باشید که مشکل از خود سایت است.
اتمام حافظه
تمام شدن گنجایش حافظه اغلب دلیل بروز این خطا است. برای افزایش حافظه، به فایل wp-config.php دسترسی پیدا کنید. با استفاده از سرویس FTP و یا مدیریت فایل در پنل میزبانی هاست ، وارد ریشه سایت خود شوید . شما باید داخل تگ اصلیphp این کد را اضافه کنید که اندازه حافظه را تا ۶۴ مگابایت افزایش میدهد :
1 |
define('WP_MEMORY_LIMIT', '64M'); |
ممکن است این مقدار از ۶۴ مگابایت هم بالاتر برود و این به نوع سرور شما بستگی دارد ، اما عموما ۶۴مگابایت کافی است .
ممکن است افزایش حافظه کمکی نکند ، و یا اینکه در حال حاضر شما بیش از ۶۴مگابایت فضا نیاز داشته باشید . این مساله میتواند به افزونه یا تم شما مربوط باشد .
افزونهها
اگر امکان دسترسی به داشبورد را دارید، عیب یابی افزونهها کار سادهای است .به سادگی روی “plugins” کلیک کنید و تیک گزینه “most recently installed” را بردارید. اگر این کار کمکی نکرد، همه افزونهها را یکجا انتخاب کرده و گزینهDeactive را تیک بزنید .
اگر به داشبورد دسترسی ندارید، یک روش دیگر برای تست پلاگینها، FTP است . اگر یک سرویس گیرنده FTP دارید، به سادگی به شاخه مربوطه وارد شوید . فایل ‘wp-content/plugins’ را باز کنید، که حاوی تمام افزونههایی است که تا کنون نصب کردهاید. نام پوشه ‘plugins’ را تغییر دهید. مثلا یک کلمه به انتهای آن اضافه کنید- به طوریکه ‘plugins’ به ‘plugins-test’ تغییر کند .
متناوبا میتوانید از این روش برای تغییر نام پوشه افزونههای شخصی استفاده کنید – که تمامی افزونهها را بصورت جداگانه تست میکند به جای اینکه همه آنها را یکجا تست کند . اگر مایل بودید تمامی افزونهها را مجددا نصب کنید، میتوانید نام پوشه را به حالت اول بازگردانید.
اگر یک افزونه خطا دارد میتواند دلایل زیادی داشته باشد . بهترین کار این است که پلاگین را پاک کرده و یک افزونه مشابه دیگر را جایگزین آن کنید .سعی کنید یک افزونه جدید پیدا کنید، یا افزونهای که اخیرا بروزرسانی شده و مسالهای ایجاد نمیکند را استفاده کنید .
تمها
اگر عیب یابی افزونهها کمکی نکرد، پس ایراد میتواند از تم باشد .قبل از هر کاری از پوشه تم خود پشتیبان بگیرید .بعد از آن میتوانید تم خود را حذف کنید ، و وردپرس یک تم پیشفرض نصب خواهد کرد . اگر مصمم بودید که تم خطا دارد، باید به توابع تم خود نگاه بیاندازید.
کد نویسی ضعیف میتواند علت این موضوع باشد . اگر مطمئن نیستید بتوانید مشکل را برطرف کنید ، با طراح تم تماس بگیرید.خرید یک تم قابل اعتماد که طراح آن را پشتیبانی میکند همیشه توصیه میشود .
Enable PHP debugging
اگر راه حلهای بالا کمکی نکرد، شما باید عمیقتر جستجو کنید.فرآیند گفته شده در پایین به شما کمک میکند مشکل خود را شناسایی کنید .با این حال، حل مشکلی که پیدا کردهاید ممکن است مهارتهای پیشرفتهتری نیاز داشته باشد .
در مرحله اول، فایل wp-config.php را باز کرده و کد زیر را در آن پیدا کنید :
1 |
define('WP_DEBUG', false); |
در ابتدای آن ‘//’ را قرار دهید، به این شکل در میآید
1 |
//define('WP_DEBUG', false); |
در حال حاضر این کد غیرفعال شده است . در مرحله بعد، کد زیر را مستقیما در بالای آن قرار دهید :
1 |
define('WP_DEBUG',true);define('WP_DEBUG_LOG',true);define('WP_DEBUG_DISPLAY',false);@ini_set('display_errors',0); |
اینجا است که نیاز به مهارت برنامه نویسی دارید . مراحلی که طی کردید فقط باعث میشود خطاها به یک فایل به نام error.log فرستاده شوند(موجود در پوشه wp-content). اگر این فایل را نمیبینید، شاید اجازه ساخت آن را ندارید . یک فایل error.log جدید بسازید و permission آن را روی ۶۶۶ تنظیم کنید .
فایل را در یک ویرایشگر متنی باز کرده و خطاهای php را بررسی کنید . اگر چیزی وجود دارد که متوجه نمیشوید یا درک نمیکنید، توصیه میکنیم از دیگران کمک بگیرید .
خطای داخلی سرور
اگر خطای ۵۰۰ سرور را دریافت کردید، ممکن است از یک خبر واقعا بد آگاه نباشید .این میتواند به علت مشکلات بسیاری باشد .یک نوشیدنی کافئین داغ بنوشید، استراحت کنید، و برای عیب یابی آماده شوید . خبر خوب ؟ برخی از روشها مشابه بخش قبلی است .
- افزونه یا تم
به “Plugin” و “them” در بخش قبل مراجعه کنید .روش عیب یابی دقیقا همان است .
- خروج از حافظه
مجددا، این پروسه مشابه بخش قبلی است .
.htaccess
ایراد از تم یا افزونه نیست ؟ اگر فایل .htaccess خراب شده باشد زمان بررسی آن است .
در مرحله اول ، نام فایل را تغییر دهید . ‘temp’ یا چیزی مشابه این را به انتهای نام آن اضافه کنید . فایل را نمیبینید؟ مطمئن شوید که ‘viewing of hidden files’. را فعال کردهاید . چگونگی دسترسی به این فایل به سرویس گیرنده FTPشما بستگی دارد، اما نسبتا ساده است . به عنوان مثال ،در بالای filezilla روی server کلیک کرده و گزینه ‘Show hidden files’ را انتخاب کنید .
در مرحله بعد، اول به بخش مدیریت وردپرس بازگردید .به بخش ‘Settings – Permalinks’ بروید، و آن را مجددا تنظیم کنید.
در حال حاضر شما یک نسخه جدید از فایل کاری را ایجاد کردهاید، و میتوانید بررسی کنید که مشکل حل شده باشد .
Enable PHP debugging
این نیز در بخش قبل توضیح داده شده است .
خطای اتصال به پایگاه داده
این خطا میتواند دلایل زیادی داشته باشد . معمولا یک خطای سروری است، اما میتواند به این دلیل باشد که شما مشخصات اتصال به دیتابیس را تغییر دادهاید.
اگر این خطا را در هر دو بخش طراحی و کدنویسی سایت خود دریافت کردهاید، مهم است که آن را اصلاح کنید. اگر همین پیغام خطا‘Error establishing a database connection’, را در بخش کدنویسی (wp-admin) سایت خود دریافت کردید، میتوانید مرحله بعد را انجام ندهید .
با این حال ، اگر شما پیغام خطای متفاوتی میبینید که در آن چیزی شبیهthe database may need to be repaired…’ ‘…..’ دارد ، باید کد زیر را در فایل wp-config.php وارد کنید :
1 |
define('WP_ALLOW_REPAIR',true); |
بعد به این آدرس بروید : http://www.examplesite.com/wp-admin/maint/repair.php
در اینجا گزینهای برای تعمیر دیتابیس میبینید ، بعد از اینکه خطا را برطرف کردید، کد بالا را از فایل wp-config.php پاک کنید .
WP-Config فایل
آیا پسورد پایگاه داده ، یا پسورد ریشه سایت خود را تغییر دادهاید ؟ اگر این چنین است، باید در فایل WP-Config نیز آنها را تغییر دهید.
1 |
define('DB_NAME','database-name');define('DB_USER','database-username');define('DB_PASSWORD','database-password');define('DB_HOST','localhost'); |
مهم است که ارزش هاست دیتابیس خود را شناسایی کنید .در این صورت خط آخر صحیح است . در اکثر مواردlocalhost خواهد بود ، اما در این مورد کمی تحقیق کنید . اگر وردپرس را روی یک سرور محلی اجرا میکنید localhost را باید با آدرس IP جایگزین کنید تا مشکل حل شود.
- ارتباط با میزبان وب
اگر زمانی که سایت شما بازدید زیادی دارد این خطا را دریافت میکنید، میتواند از طرف شرکت ارائه دهنده خدمات وب باشد . روشهایی وجود دارد که متوجه شویدServer MySQL پاسخگو هست یا خیر، اما شرکت میزبان هاست شما نیز میتواند در این مورد پاسخگو باشد . حفظ ارتباط با میزبان هاست همیشه یک ایده خوب است.
راه حلهای بیشتر
در اکثر موارد راه حلهای گفته شده در بالا به شما کمک میکند خطاهای خود را برطرف کنید، با این حال، مسائل نادری وجود دارد که مشکلات مشابهی را به وجود میآورد.اگر هنوز هم در حال تلاش و یادگیری هستید به شما توصیه میکنیم به عنوان یک شروع خوب از این صفحه بازدید کنید :
http://codex.wordpress.org/Common_WordPress_Errors
موفق باشید
سلام
یک سوال
چرا این یک ماه اخیر که وردپرس ۴٫۴ آپدیت شده، نسخه فارسیش آپدیت نشده؟ قبلا دو سه روز بعد از اومدن نسخه جدید نسخه فارسیش هم میومد.
الان با این اوصاف ما چکار کنیم؟ اپدیت کنیم و انگلیسی از این به بعد استفاده کنیم؟ نظر شما چیه؟
با تشکر