گاهی اوقات ممکن است مشکلاتی را در ارتباط با وب سایت خود تجربه کنید، مواردی مانند صفحه سفید مرگ، ارور 500 یا خطای داخلی، ارور 403 و… که برخی از این ها نشانه خاصی ندارند و متوجه نخواهید شد چه عللی باعث بروز آن ها شده است. در این آموزش به بررسی فایل error_log سایت و نحوه مشاهده ارور لاگ در سی پنل، برای مشاهده علل خطاها و روش رفع آن ها خواهیم پرداخت.
این روش یعنی بررسی فایل ارور لاگ سایت برای هر دو دسته افراد مبتدی و توسعه دهندگان مفید است، زیرا خطوط خاصی از کدهای سایت شما را نمایش می دهد که باید برای حل ارورهای سایت بررسی شوند.
 این روش موجب می شود بدانید سر منشا خطا چیست و از چه طریقی رفع می شود حتی این امکان را دارید که سرنخ های ارور را در موتورهای جستجو مثل گوگل سرچ کنید و راه حلی برای رفع آن بیابید. پس تا انتهای این مقاله همراه ما باشید.
هاست پرسرعت سی پنل (ایران و اروپا)
میزبانی پایدار و امن برای وبسایت شما:
✔️ارائه IP اختصاصی ✔️امکان نصب دامنه اضافی و کانفیگ منابع دلخواه ✔️دسترسی آسان به ابزارهای Cpanel در پنل کاربری
همین حالا هاست خود را سفارش دهید! 👇

فایل Error Log چیست و چرا برای رفع خطاهای سایت حیاتی است؟

فایل ارور لاگ یکی از مهمترین ابزارهای عیب یابی سایت است که تمامی خطاهای PHP، هشدارها، لاگ خطا و اخطارهای سایت (مرتبط با قالب یا افزونه های سایت) را به صورت زمانبندی شده ثبت می کند. این فایل فرمت متنی داشته و قابل اجرا نیست.
به زبان ساده تر، فایل error_log (ارور لاگ) همانطور که از نام آن نیز می توان حدس زد، یک فایل گزارش خطا و محلی است برای ذخیره کردن خطاهای وبسایت شما، تا هر زمان که با مشکلی مواجه شدید به راحتی با دسترسی و خواندن آن به عیب یابی سایت بپردازید و آن را برطرف نمایید. گاهی این فایل حجم زیادی اشغال می کند که می تواند موجب پر شدن فضای هارد و کند شدن هاست شما می شود که باید آن را خالی کنید . می توان گفت این فایل جعبه سیاه وبسایت شماست چون تمام مشکلات را با جزئیات کامل مانند تاریخ، ساعت، نوع خطای PHP و حتی مسیر فایل و شماره خط خطا را ذخیره می کند. در زیر یک نمونه از ارورلاگ در این فایل را مشاهده می کنید.
error log چیست
شاید برایتان سوال پیش آمده باشد که کاربرد اصلی خواندن error log چیست؟
  • بهینه سازی عملکرد و تداخل پلاگین‌ها(Plugin Conflicts).
  • تشخیص سریع مشکلات و پیدا کردن دقیق فایل دارای خطا.
  • ردیابی خطای 500 و عیب یابی صفحه سفید سایت و خطاهای داخلی سرور (Internal Server Error).
اما فایل error_log کجاست؟ این فایل در :
🟢هاست های معمولی در مسیر public_html
🟢در سرورها در مسیر /var/log/apache2 قرار دارد.
🟢 و اما در وردپرس فایل اصلی آن در مسیر /wp-content/debug.log قرار دارد.
📌 نکته: دقت داشته باشید که ممکن است گاهی فایل error_log حجمی بالا حتی تا چند گیگابایت از هاست شما را اشغال کند که می بایست آن را به صورت دوره ای پاکسازی کنید تا فضا برای لاگ های جدید داشته باشید.

بررسی لاگ سایت و نحوه فعال کردن error log در سی پنل

برای این کار ابتدا باید وارد کنترل پنل میزبانی سایت خود شوید. پس قبل از شروع بررسی ارور لاگ سایت و خطایابی نیاز به دسترسی به کنترل پنل میزبانی سرور یا هاست وبسایت خود دارید تا وارد سی پنل شده و سپس به پیدا کردن error log بپردازید که آیا فعال است یا خیر. پس در ادامه برای فعالسازی و مشاهده فایل گزارش خطا مراحل زیر را به صورت دقیق بررسی کنید.
برای ورود به سی پنل در صورتی که از هاست سی پنل وب داده استفاده می کنید از ناحیه کاربری خود وارد داشبورد مدیریت هاست سی پنل شده و روی ورود به cPanel کلیک کنید. مانند تصویر زیر و در صورتی که هاست شما از ارائه دهنده دیگر است از طریق پنل مدیریت یا روشهایی که شرکت هاستینگ شما در اختیارتان قرار داده وارد محیط سی پنل شوید.
فایل ارور لاگ

مرحله 1: فعال سازی سیستم گزارش دهی خطا

در ابتدا، شما باید چک کنید که آیا سیستم گزارش دهی خطاهای سایت در حساب کاربری شما فعال هست یا خیر. البته در نظر داشته باشید که هاستینگ شما این کار را از طریق فایل php.ini انجام می دهد. برای بررسی این مورد می توانید اطلاعات PHP سایتتان را چک کنید. سریع ترین روش این است که از طریق فایل PHPINFO اقدام کنید. که در آموزش های قبلی نحوه ساخت آن را توضیح دادیم.
💡 بیشتر بدانید: نحوه ایجاد فایل phpinfo و بررسی اطلاعات PHP سایت
برای دسترسی به این فایل می بایست در انتهای نام دامنه خود در مرورگر عبارت info.php را قرار دهید مانند زیر:
 Domain Name/info.php
 
# مانند فرمت زیر:

example.com/info.php
پس از باز کردن فایل phpinfo، کلیدهای CTRL + F را فشار داده و عبارت log_errors را جستجو کنید همانند تصویر زیر باید مقدار مقابل آن ON باشد که نشان دهنده فعال بودن آن است.
پیدا کردن error log
اگر مقدار log_errors روی Off تنظیم شده باشد، چند راه برای تنظیم و فعال سازی آن بر اساس پلتفرم میزبانی شما وجود دارد که در ادامه به آن ها خواهیم پرداخت. بعد از فعال سازی سیستم گزارش گیری خطا، این امکان وجود دارد که ارورهای سایت خود را پیگیری و سریع تر رفع کنید.

روش اول – فعال سازی error_log از طریق .htaccess

در صورتی که این فایل در هاست شما فعال نباشد یکی از روشهای فعال سازی آن از طریق htaccess است. یک راه آسان و قابل اعتماد برای مدیریت و پیکربندی php وجود دارد و آن استفاده از فایل htaccess . است که می توان برخی پیکربندی ها را به سادگی از این طریق مدیریت کرد.
🔶دقت داشته باشید که htaccess یکی از فایل های مخفی درون هاست شما است. پس برای مشاهده این فایل بخش نمایش فایل های پنهان را در حال فعال قرار دهید.
🔶برای این کار ابتدا وارد File Manager شوید، پس از آن دایرکتوری public_html را باز کنید سپس فایلhtaccess را یافته روی آن کلیک راست و Edit را انتخاب کنید تا بتوانید آن را ویرایش کنید . پس از آن قطعه کد زیر را برای فعال سازی حالت گزارش دهی خطاها به آن اضافه کرده و در انتها برای اعمال تغییرات Save Changes را بزنید تا تغییرات ذخیره شوند.
php_flag log_errors on
cpanel error log
پس از فعال سازی امکان گزارش گیری از خطاهای سایت، باید محلی را انتخاب کرد که این گزارشها در آن ثبت شوند. همیشه یک فایل تحت عنوان لاگ برای ذخیره گزارش خطا در نظر گرفته می شود از همین رو یک فایل با نام error_log.txt در پوشه public_html ایجاد می کنیم. در این مرحله باید قطعه کد زیر را به فایل htaccess. اضافه کنید تا گزارش گیری در فایل ارور لاگ انجام شود:
php_value error_log /home/FTP_username/public_html/error_log.txt
فعال سازی log_error
📌 نکته: فراموش نکنید که تغییرات خود را ذخیره کنید. با کلیک روی Save Changes این کار را انجام دهید.
پس از آن، اطلاعات PHP خود را مجددا از طریق فایل PHPINFO بررسی کنید حالا مقدار log_errors باید بر روی On قرار گرفته باشد. با این روش، خطاهای وب سایت در فایلی به نام error_log.txt واقع در دایرکتوری public_html ثبت می شوند.

روش دوم – فعال سازی error_log از طریق cPanel

روش دیگر استفاده از ابزارهای سی پنل است. اگر از cPanel به عنوان کنترل پنل استفاده می کنید:
🔶 وارد cPanel شوید و از قسمت Software، بر روی گزینه Select PHP Version کلیک کنید.
مشاهده error log
🔶 سپس در صفحه باز شده روی تب  Options کلیک کنید تا وارد PHP Options شوید در این قسمت تیک مقابل log_errors را فعال کنید همانند تصویر زیر تا در حالت ON قرار بگیرد. (اگر به رنگ آبی و غیرفعال باشد به این معناست که log_errors در حالت off قرار دارد.)
حال اگر مجدد فایل phpinfo را باز کنید مشاهده خواهید کرد که ارور لاگ شما در حالت ON قرار دارد.
فعال سازی log_error

مرحله 2: مشاهده فایل ارور لاگ سایت

حال که نحوه فعال کردن error log در سی پنل را آموختید و آن را فعال کردید، از حالا به بعد، هنگامی که یک خطا در وب سایت شما رخ دهد یک گزارش خطا نیز ایجاد می شود. برای تست و بررسی می توانید بخشی از کدهای خود را با اضافه کردن یک نماد دستکاری کنید و سپس از طریق File Manager فایل گزارش خطاها (ارور لاگ) را بررسی کنید و چک کنید آیا خط جدیدی اضافه شده؟ این خط جدید اطلاعات در مورد خطای سایت شما را نمایش می دهد. فراموش نکنید کدی که به عنوان تست دستکاری کردید را به حالت اولیه بازگردانید.

محل قرارگیری فایل error log در سی پنل

در کنترل پنل هایی چون cPanel، فایل گزارش خطاها در دایرکتوری public_html شما قرار دارد و به طور پیش فرض با نام error_log ذخیره می شود. برای مشاهده این فایل می توانید از طریق File Manager اقدام کنید. کافی است روی آن کلیک کنید.
مشاهده لاگ سایت در سی پنل
این فایل در دایرکتوری public_html قرار دارد. مانند تصویر زیر روی public_html کلیک کنید، سمت راست فایل error_log را مشاهده خواهید کرد.
فایل ارور لاگ

مرحله 3: بررسی خطاهای رایج ارور لاگ سایت

برای عیب یابی دستورالعمل هایی برای درک بهتر برخی خطاها وجود دارد. در زیر چند نمونه از گزارش خطای php رایج را مشاهده می کنید:

خطای Parse Error و Syntax Error

خطای سینتکس ارور نوعی خطای نگارشی محسوب می شود که به معنای اشکال در قواعد نوشتاری است.
Parse
error: syntax error, unexpected T_PUBLIC in
/home/username/public_html/cms/components/com_content/models/article.php
on line 70
 برای برطرف کردن این خطا، باید فایل ذکر شده را بررسی کنید. لطفا توجه داشته باشید که شماره خطی که خطا در آن اتفاق افتاده نیز ارائه می شود و باید دقیقا در همان خط به دنبال برطرف کردن مشکلات مرتبط با قواعد نوشتاری باشید.

Fatal Error ( خطاهای بحرانی)

در صورتی که با خطای زیر مواجه شدید (Call to undefined function get_header)، باید دقت داشته باشید که این اعلان به شما هشدار می دهد که صفحه index.php در حال تلاش برای فراخوانی تابعی است که ظاهرا وجود ندارد.در چنین مواقعی باید بررسی کنید که آیا نام تابع درست است یا خیر؟
PHP
Fatal error: Call to undefined function get_header() in
/var/www/username/public/blog/wp-content/themes/theme/index.php on line 1

خطای Maximum Execution Time

و اما در صورتی که با خطای Maximum Execution Time مواجه شدید باید بدانید که این خطا به آدرسی که در متن خطا ذکر شده اشاره دارد، باید به آدرس ذکر شده مراجعه کرده و محدودیت زمانی آنرا رفع کنید.
Fatal
error: Maximum execution time of 30 seconds exceeded in
/home/username/domains/domain.com/public_html/wp-includes/class-phpmailer.php
on line 737
برخی معتقدند بهترین روش برای عیب یابی سایت و رفع ارورها، جستجوی خطا در موتور جستجوی گوگل است اما باید به این نکته توجه داشته باشید که باید سرنخی از منشا خطا بیابید. به عنوان مثال درج یک کاراکتر اضافه در میان کدها موجب بروز خطای سینتکس خواهد شد، در منابع یا موتورهای جستجو تنها طریقه رفع این ارور را می یابید اما اینکه این خطا دقیقا در چه جایی رخ داده را تنها می توانید از طریق فایل ارور لاگ متوجه شوید.

جمع بندی نهایی؛ بررسی لاگ سایت

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

سوالات متداول درباره ارور لاگ سایت

چطور فایل ارور لاگ سایت را ببینم؟

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

سارا صالحی ریحانی
سارا صالحی ریحانی

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

مقاله‌ها: 49
پاسخی بگذارید

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