فعالسازی امن و استاندارد حالت دیباگ در پی.اچ.پی
یکی از تفاوتهایی که زبان php با زبانهای کامپایلری دارد این است که ممکن است در زمان خروجی گرفتن و سپس بارگذاری روی سرور تمامی باگهای آن را متوجه نشوید. این خاصیت زبانهای مفسری است. به همین دلیل گاها در حالت production با خطایی روبرو میشوید که باید بدون بستن سایت بروی بازدید کنندهها، آن را پیدا و رفع کنید. برای انجام اینکار معمولا حالت دیباگ پی.اچ.پی را فعال میکنیم. این یک اشتباه امنیتی است، چون ممکن است یکی از کاربران با آن خطا فنی روبرو شود. آن خطا اول ممکن است برای کاربر نامفهوم و دارای چهره ناخوشایندی باشد و دوم ممکن است اطلاعات هاست میزبانی را منتشر کند. برای رفع این مشکل و امن کردن حالت دیباگ، باید حالت دیباگ را بصورت شرطی و با استفاده از کد زیر فعال نمایید.
if ( in_array( '<IP>', [ $_SERVER['REMOTE_ADDR'], $_SERVER['HTTP_X_FORWARDED_FOR'] ] ) ) { $debug = true; }
بجای مقدار <IP>، آی.پی سیستم خود را قرار دهید. با اینکار حالت دیباگ صرفا برای شما که توسعه دهنده هستید فعال میشود. پس از فعال سازی حالت دیباگ، برای یافتن خطا از تابع ثبت لاگ و خطا یابی در پی اچ پی استفاده کنید.