چگونه ارور PHP را در گزارشات وردپرس و سی پنل فعال کنیم؟
تحلیل ارور PHP یکی از راهکارهای کارآمد برای بررسی مشکلات موجود در هاست وب سایت است. فعال کردن لاگ ارور php وردپرس با سی پنل بسیار مهم است. معمولا پیدا کردن دلیل مشکلات مختلف در وردپرس و سایر برنامههای PHP دشوار است. تحلیل لاگهای ارور PHP، که شامل لاگ های مربوط به وردپرس نیز میباشد، به شما کمک میکند تا به راحتی مشکلات را شناسایی کنید. با پارس وی دی اس همراه باشید.
همچنین از این طریق، امکان شناسایی پلاگینها، تمها و کدهای شخصی مشکل ساز و متخلف نیز به آسانی امکان پذیر است. ما در این مقاله لاگ ارور PHP را بررسی کرده و توضیح میدهیم که چرا داشتن ارور لاگ میتوانید مفید باشد.
سپس نحوه استفاده از سی پنل و WHM برای فعال کردن و پیکربندی لاگهای وردپرس و پیکربندی اجرایی PHP را شرح خواهیم داد.
منظور از ارور لاگ PHP چیست؟
یک لاگ ارور PHP در واقع لیستی از پیام های خطا و هشدار است که توسط زمان اجرای زبان (Language runtime) ایجاد و در یک فایل ذخیره می شود. فعال کردن لاگ ارور php وردپرس با سی پنل بسیار حیاتی و کارساز است. وردپرس به زبان PHP نوشته شده است. پس زبان PHP پیام های ارور وردپرس و همچنین شیوه ثبت آن ها را مدیریت می کند. ارورهای وردپرس به دلایل مختلفی ممکن است رخ دهند. این خطا ممکن است در اثر وجود یک ارور نگارشی در یک خط از کد به وجود بیاید.
از طرفی دیگر، ممکن است کد به تنهایی هیچ ایرادی نداشته باشد اما در زمان اجرای آن، سیستم با مشکل مواجه شود. در هر صورت، توسعه دهندگان وظیفه دارند تا شما را در خصوص ارور به وجود آمده، آگاه کنند. در نتیجه آن ها کد را به گونه ای طراحی می کنند تا در صورت بروز هر گونه خطا، یک پیام را در یک فایل جداگانه ذخیره کند. گزارش ها (یا لاگ های) خطا در واقع یک لیست با اولویت زمانی از پیام های مهم کد هستند.
چرا ارور لاگ PHP مفید است؟
تحلیل لاگ های خطا برای پیدا کردن ایرادات وردپرس، ابزاری کلیدی و بسیار کاربردی محسوب می شوند. اگر ارور ایجاد شده در اثر استفاده بیش از حد از منابع باشد، یک پلاگین خراب شده باشد و یا صفحه مورد نظر بارگذاری نشود، لاگ های خطا می توانند به دقت این موضوع را به شما اطلاع دهند.
شما ممکن است دچار موقعیت “صفحه سفید مرگ” شوید. در این موقعیت وردپرس به طور کلی از کار می افتد و هیچ راهی برای پیدا کردن مشکل وجود ندارد. در چنین شرایطی، گزارش های خطا تنها روزنه موجود برای پیدا کردن ایراد کار هستند.
چگونه خطای PHP را در گزارشات وردپرس و سی پنل دنبال کنیم؟
چگونه ورودی های وردپرس را در سی پنل تحت نظر بگیریم؟
پیش از آنکه بتوانید به تحلیل لاگها و مشکلات موجود در وردپرس بپردازید، باید به وردپرس یا PHP دستور ثبت و نمایش گزارش را بدهید. وردپرس به طور پیش فرض اقدام به نگارش و ثبت گزارش ها و ارورها نمی کند، چرا که این کار می تواند بخش بزرگی از منابع محاسباتی سرور را به خود اختصاص دهد.
همچینی در صورتی که این اطلاعات در اختیار افراد ناشناس قرار بگیرد، امکان سو استفاده و ایجاد مشکلات امنیتی وجود دارد. گاهی اوقات این لاگ ها حاوی اطلاعات و سرنخ های بسیار خوبی در خصوص نقاط آسیب پذیر سرور و سیستم هستند.
ما در ادامه دو روش در سی پنل برای پیکربندی سیستم جهت ثبت خطا را مرور خواهیم کرد:
- فعال کردن ثبت رخدادها و لاگ ها در وردپرس از طریق WP-Conf
- فعال کردن ثبت رخدادها و لاگ ها در PHP از طریق فایل ini.
هر دو روش را می توانید در زمان بسیار کوتاهی در CPanel & WHM اجرا کنید.
ثبت گزارش های ارور وردپرس با Wp Config.php
فایل wp-config.php حاوی تنظیمات وردپرس است و با اضافه کردن چند خط کد، شما می توانید حالت دیباگ را فعال کرده و از وردپرس بخواهید تا خطاها را ثبت کند. برای انجام این کار، باید ابتدا File Manager سی پنل را فعال کنید. شما می توانید File Manager را در بخش فایل های صفحه اصلی پیدا کنید.
سایت وردپرس شما احتمالاً در دایرکتوری ریشه (Root) یا در زیر مجموعه public_html قرار دارد. البته در صورتی که سرور شما پیکربندی غیر استانداردی داشته باشد، ممکن است سایت در جای دیگری ذخیره شده باشد. روی دایرکتوری حاوی سایت کلیک کرده و فایل wp-config.php را در پنل سمت راست پیدا کنید.
روی آن کلیک کرده و سپس در نوار منوی باز شده، بر روی کلمه Edit کلیک کنید. فایل در یک ویرایش متن سی پنل باز می شود. خطی که عبارت زیر در آن نوشته شده است را پیدا کنید:
/* That's all, stop editing! Happy blogging. */
در بخش فوقانی عبارت فوق، کد زیر را اضافه کرده و سپس بر روی کلمه Save کلیک کنید:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );
با این کار ما از وردپرس میخواهیم حالت اشکال زدایی (Debugging) را فعال کند و پیام های خطا و یا هشدار خروجی را در فایل log ذخیره کند.
ما همچنین از وردپرس میخواهیم که خطاها را در رابط کاربری نمایش ندهد، چرا که این کار چندان برای نمایش وبسایت های عمومی جالب نیست.
حالا وردپرس پیام های خطا را در فایلی تحت عنوان error.log در دایرکتوری wp-content ذخیره میکند. این دایرکتوری در واقع همان دایرکتوری ریشه برای وبسایت وردپرس شماست. برای باز کردن این فایل، شما میتوانید از نرم افزار مدیریت فایلهای سی پنل و سایر ویرایشگرهای متنی استفاده کنید. جدید ترین پیامها معمولا در بخش انتهایی این فایل ذخیره میشوند.
در این فایل اطلاعاتی در خصوص نوع خطا و کدی که ارور مد نظر را به وجود آورده است، وجود دارد. بدین ترتیب، شما می توانید پلاگینهای خود یا فایل های قالب مسئول ارور پیش آمده را ردیابی کنید.
پس از تشخیص و رفع مشکل، مطمئن شوید که کد ورود به سیستم را که به فایل پیکربندی اضافه کردهاید، حذف خواهید کرد. فایل خطاها به مرور زمان بزرگتر میشود و در نهایت، بخش بزرگی از فضای دیسک شما را اشغال خواهد کرد.
ذخیره ارور PHP در وردپرس
روش ذکر شده در بالا برای مدیریت مشکلات و خطاها از طریق وردپرس، عالی است. اما برای مدیریت و ثبت خطاها برای سایر سیستم های مدیریتی و اپلیکیشن ها، باید چه کار کنیم؟
برای ایجاد سیستم ثبت خطاها به صورت گسترده، شما می توانید چند خط کد به فایل php.ini اضافه کنید. شما میتوانید این فایل را در ویرایشگر MultiPHP INI سی پنل باز کنید. البته تنها در صورتی که محیط میزبان وب سایت شما اجازه دهد، امکان ویرایش این فایل را خواهید داشت.
برگه ویرایشگر و سپس یک مکان در منوی کشویی را انتخاب کنید. سی پنل در این شرایط فایل پیکربندی موجود را نمایش می دهد که ممکن است کاملا خالی باشد. موارد زیر را به قسمت ورودی متن اضافه کرده و سپس فایل را ذخیره کنید.
log_errors = true
error_log = /home/user1/logs/error.log
display_startup_errors = false
display_errors = false
html_errors = false
error_reporting = E_ALL
log_errors_max_len = 0
این عبارات در واقع به سیستم می گویند تا در زمان اجرا، تمام ارورهای لاگ شده را در فایلی با نام error_log ذخیره کنند. شما می توانید نام این فایل و یا مکان قرار گیری آن در سیستم را به سلیقه خود تغییر دهید.
ما در این جا ارورهای استارتاپ را خاموش کردیم چرا که آنها به ندرت برای رفع باگها و خرابی های اپلیکیشن ها مفید هستند. ما همچنین به PHP دستور دادیم که ارورها را در صفحه های وب نمایش ندهد، چرا که نمیخواهیم کاربران صفحه آنها را مشاهده کنند.
بر روی عبارت Save کلیک کنید تا PHP خطاها را در فایل انتخابی شما وارد کند. شما میتوانید به این فایل از طریق نرم افزار فایل منیجر سی پنل و یا از طریق SSH دسترسی پیدا کنید.
دایرکتیوهای (directives) php.ini استفاده شده در این مثال، برای اکثر سرورهای وب سایتها مناسب هستند اما شما میتوانید از سایر دایرکتیوها برای پیکربندی PHP استفاده کنید. پس از استفاده از log ها برای پیدا کردن منبع مشکل، کدی را که برای تغییر اضافه کردهاید، حذف کنید و یا مقدار log_errors را به “False” تغییر دهید تا ذخیره خطاها و پیام های هشدار، غیر فعال شود.
عیب یابی موثر با PHP Error Logs و cPanel
ثبت لاگ از خطاها یکی از ابزارهای ایده آل برای تشخیص و برطرف کردن ارورها و مشکلات وب سایت های مبتنی بر وردپرس، و همچنین سایر اپلیکیشن های وب محسوب می شود. در کنار cPanel & WHM فعال کردن و یا غیر فعال کردن فرایند ثبت لاگ ارورها بسیار آسان است و می تواند در زمان مورد نیاز برای پیدا کردن مشکلات و برطرف کردن آنها، به شکل قابل توجهی صرفه جویی کند.
منبع: blog.cpanel.com