403

زمانی که وب سرور به یک صفحه وب یا بخشی از محتوای وبسایت دسترسی نداشته باشد، خطای 403 Forbidden را نمایش می دهد. وب سرورهای مختلف ارور های مختلفی از خطای 403 Forbidden را نمایش میدهند. در این مقاله بررسی خواهیم کرد که خطای 403 چیست و چگونه میتوان آنرا رفع نمود.

خطای 403 Forbidden زمانی اتفاق می‌افتد که یک وب سرور دسترسی به یک صفحه وب را برای کاربری که تلاش می‌کند از طریق مرورگر وب به آن دسترسی پیدا کند، رد می‌کند، دلیل رد کردن درخواست ارسال شده از سمت کاربر توسط وب سرور دلایل متفاوتی میتواند داشته باشد که در ادامه موارد رایج را بررسی میکنیم.

انواع ارور های 403 :

مانند سایر خطاها، وب مسترها می توانند نحوه نمایش خطای 403 را در وبسایت خود سفارشی سازی کنند. محتویات آن نیز به وب سرور مورد استفاده بستگی دارد. به همین دلیل است که تعداد زیادی خطای 403 با متن های مختلف در وب سایت های مختلف وجود دارد.

برخی از خطا های رایج 403 عبارتند از:

  • 403 Forbidden
  • HTTP 403
  • Forbidden
  • HTTP Error 403 – Forbidden
  • HTTP Error 403.14 – Forbidden
  • Error 403
  • Forbidden: You don’t have permission to access [directory] on this server
  • Error 403 – Forbidden
  • 403 Forbidden Error
  • 403 Error
403 forbidden

 

اما موارد رایجی که باعث دریافت خطای 403 می شود عبارتند از :

خالی بودن دایرکتوری وب سایت : در صورتی که هیچ فایل index.php و یا index.html در دایرکتوری سایت شما وجود نداشته باشد این خطا دریافت میگردد.

گم شدن فایل index : در صورتی که فایل index وب سایت شما با نام دیگری باشد این فایل شناسایی نمی شود و خطای 403 دریافت می شود.

Permission/ownership اشتباه: در صورتی که دسترسی و یا permission یک فایل یا یک فولدر که سعی در دسترسی به آن از طریق مرورگر دارید صحیح نباشد خطای عدم دسترسی و 403 دریافت خواهید کرد.

پیکربندی اشتباه فایل .htaccess : فایل htaccess. تنظیمات و پیکربندی های حیاتی وب سایت را در خود دارد و ممکن است در صورت پیکربندی اشتباه باعث دریافت خطای 403 در وب سایت گردد.

آلوده شدن وب سایت به بدافزار: در صورتی که وب سایت شما به بد افزار آلوده شده باشد ممکن هست بر روی فایل htaccess تاثیر گذار باشد.

کش بودن محتوا : در برخی موارد ممکن هست بخشی از محتوای وب سایت خود را آپدیت کنید اما پس از فراخوانی محتوای آپدیت شده با ارور 403 مواجه شوید دلیل این مورد کش شدن محتوای قبلی می باشد که در حال حاضر با آپدیت شدن محتوا دسترسی به آن ممکن نیست.

پلاگین ها:پیکربندی نادرست افزونه های وردپرس یا ناسازگاری آنها می تواند خطای 403 را ایجاد کند.

 

چگونه خطای 403 Forbidden را برطرف کنیم؟

بسته به اینکه بازدیدکننده وب سایت هستید یا مدیر وب سایت، می توانید چندین کار برای رفع خطای 403 Forbidden انجام دهید.

بررسی دایرکتوری وب سایت:

در صورتی که دایرکتوری وب سایت شما خالی باشد خطای 403 دریافت خواهید کرد.مطمئن شوید که محتوا در دایرکتوری صحیح سرور قرار دارد.

بسته به وب سروری که از آن استفاده می کنید، دایرکتوری صحیح برای محتوای شما به شکل زیر است:

وب سرور Nginx :

/var/www/vhosts/domain.com/httpdocs/

وب سرور Apache :

/home/username/public_html/

اگر دایرکتوری های بالا در سرور شما موجود نمی باشد میتوانید اقدام به ساختن آنها نمایید.

 

اضافه کردن صفحه ی index:

صفحه اصلی وب سایت به طور پیش فرض index.html یا index.php است. اگر چنین صفحه ای در وب سایت شما وجود نداشته باشد، بازدیدکنندگان ممکن است با خطای 403 مواجه شوند. این مشکل را با آپلود یک صفحه index در دایرکتوری httpdocs یا public_html خود حل کنید. اگر قبلاً یک صفحه اصلی به نامی غیر از index دارید، می توانید نام آن را تغییر دهید یا یک ریدایرکت در فایل htaccess. خود به صفحه اصلی تنظیم کنید.

برای تنظیم ریدایرکت در فایل htaccess ، از کد زیر استفاده نمایید:


redirect /index.html /homepage.html

مجوزهای فایل و دایرکتوری را بررسی کنید :

هر فایل و دایرکتوری در وب سایت شما دارای مجوزهایی است که دسترسی به آن فایل ها و دایرکتوری ها را کنترل می کند. مجوزهای فایل یا دایرکتوری نادرست می تواند باعث خطای 403 Forbidden شود. مجوزها مشخص می کنند که چه کسی به فایل یا دایرکتوری مورد نظر دسترسی خواندن یا نوشتن دارد.

مجوزها با مقادیر عددی نشان داده می شوند:

0755 برای دایرکتوری ها

0644 برای محتوای ثابت

0700 برای محتوای پویا

Permission فایل ها را میتوانید از طریق دستور Chmod تغییر دهید.

 

فعال سازی directory browsing

به منظور فعال سازی این مورد میتوانید مطابق راهنمای زیر با توجه به نوع وب سرور خود عمل نمایید:

  • وب سرور IIS EXPRESS :

فایل config را در سرور خود باز نمایید. تگ زیر را در <system.webServer> وارد نمایید و فایل را ذخیره نمایید:

<directoryBrowse enabled=”true” /> <modules runAllManagedModulesForAllRequests=”true” />

  • وب سرور Nginx  :

در وب سرور nginx تنها کافی است پارامتر autoindex off را در فایل config به autoindex on تغییر دهید.

 

از دیگر روش های رایج رفع این ارور میتوان به موارد زیر اشاره نمود:

غیرفعال کردن فایل htaccess یا ساخت فایل htaccess جدید

اسکن کردن سرور به منظور حذف بد افزار ها

غیرفعال کردن پلاگین ها و یا تم

 

با ما در مقاله های آینده همراه باشید.