خطای 403 – خطای 403 forbidden – خطای سرور داخلی – رفع خطای 403 forbidden
خطای 403 forbidden
خطای 403 forbidden از خطاهای رایج در HTTP می باشد و زمانی رخ می دهد که یک وب سرور بنا به دلایلی دسترسی شما را محدود کند این خطا رخ می دهد.
نحوه نمایش خطای سرور داخلی 403
خطای 403 forbidden ممکن است در همه سیستم عامل ها با همه مرورگرهای جدید و قدیمی به وجود بیاید. خطای سرور داخلی با اینکه جزو خطاهای 4xx(سمت کاربر) است ولی معمولا دلیل رخ دادن آن از سمت سرور می باشد. از جمله رایج ترین پیغام های آن در مرورگر به صورت زیر است
Forbidden Error Forbidden HTTP 403 Access is denied Forbidden: Access is denied Thats an Error 403(در سرورهای گوگل) 0x80244018(در سرورهای مایکروسافت همراه با عبارت WU_E_PT_HTTP_STATUS_FORBIDDEN) The website cannot display the page(در مرورگر IE با عنوان"403") You dont have permission to access URL on this server
نحوه بروز خطای 403 forbidden
خطای سرور داخلی زمانی رخ می دهد که وب سرور بنا به هر دلیلی دسترسی شما را محدود شناخته و از دسترسی شما به منبع مورد نظر جلوگیری می کند با توجه به ماهیت این خطا هیچ گزارش تکمیلی و دلیل قطعی به کاربر نشان داده نمی شود.(البته در وب سرور IIS ممکن است گزارشی به صورت خلاصه وار به کاربر نمایش داده شود.)
در خطای 403 forbidden درخواستی که از سمت کاربر(مثلا مرورگر وی) به وب سرور ارسال می شود توسط وب سرور به صورت کاملا درست شناخته می شود اما به دلیل اینکه دسترسی شما از طریق پیکر بندی های وب سرور, تنظیمات سایت و …. محدود شده این خطا به کاربر ارسال می کند.
دلایل رخ دادن خطای 403 forbidden
دلیل به وجود آمدن خطای سرور داخلی معمولا به صورت کامل مشخص نمی شود و وب سرور تنها با گفتن عبارت شما اجازه استفاده از این منبع را ندارید اکتفا می کند. از مهم ترین ترین دلایل رخ دادن خطای سرور داخلی می توان به موارد زیر اشاره کرد:
آدرس IP غیر مجاز
ممکن است سرور به دلایلی IP شما یا یک منطقه خاص(مثلا یک کشور) را بلاک کند. در اینصورت شما با خطای 403 forbidden مواجه می شوید.(403.6 کد این مورد در وب سرور IIS است)
جلوگیری از لیست کردن پوشه ها
وب سرور ممکن است به خاطر حفظ امنیت خود (مثلا مشاهده فایل های مخفی یا فایل هائی که برای طراحی استفاده شده اند) از لیست کردن فایل های موجود در یک پوشه جلوگیری کند این مورد زمانی اتفاق می افتد که به صورت مستقیم به آدرس یک پوشه مراجعه کنید. 403.14 کد این مورد در IIS است.
محدودیت سطح دسترسی
ممکن است دسترسی (Permission) ثبت شده برای فایل ها یا منابع یک سایت به گونه ای باشد که از استفاده کاربر از آن منبع جلوگیری کند برای مثال ممکن است Permission یک فایل یا فولدر به گونه ای باشد که جلوی اجراشدن یک فایل را بگیرد(403.1 در IIS) یا به گونه ای باشد که جلوی خوانده شدن آن را بگیرد(403.2 در IIS) یا به گونه ای باشد که جلوی نوشته شدن بر روی آن فایل را بگیرد(403.3 در IIS)
موارد بالا دلایل عمده رخ دادن این خطا می با شد ولی موارد زیر هم می تواند سبب رخ دادن این خطا شود.
ممکن است فایل htaccess موجود بر روی سایت از دسترسی بازدیدکنندگان به یک منبع, صفحه یا پوشه خاص جلوگیری کند(403.8 در IIS)
ممکن است استفاده از آن منبع فقط در حالت SSL امکان پذیر باشد.(کدهای 403.4 و 403.5 در IIS)
ممکن است درخواست های زیادی از طرف یک IP مشخص به سرور ارسال شده باشد در این صورت سرور برای حفظ آپ بودن خود طبق پیکربندی هایش از دسترسی کاربر به سایت جلوگیری می کند(403.502 در IIS)
نحوه رفع خطای 403 forbidden
الف) صاحب سایت/ سرور
در صورتی که صاحب سایت یا سرور هستید برای رفع خطای 403 forbidden مراحل زیر را انجام دهید
1- بررسی سطح دسترسی
ابتدا اطمینان حاصل کنید که دسترسی فایل ها و صد البته پوشه ها متناسب با محتوای فایل و حساسیت آن باشد معمول نداشتن Permission خواندن(Read) باعث بروز این خطا می شود. همچنین دسترسی نوشتن(Write) و اجرا کردن(Modify) را نیز طبق نیازهای سایت تنظیم کنید همچنین صاحب فایل ها (Owner) را نیز تنظیم کنید.
2- بررسی فایل htaccess
در مرحله بعدی مطمئن شوید که فایل htaccess موجود در ریشه سایت دسترسی را محدود نکند چون محدود کردن بیش از حد با عث بروز چنین خطاهائی می شود و محدود نبون آن ممکن است امنیت سایت را به خطر بیندازد پس با توجه به نیاز های سایت خود پیکربندی آن را انجام دهید.
3- آدرس های IP بلاک شده
آدرس های آی پی بلاک شده توسط سایت خود را چک کنید ممکن است رنج خاصی از IP ها به اشتباه بلاک شده باشد مثلا ممکن است به جای بلاک کردن یک رنج مشخص آدرس های IP کل آن کشور یا منطقه را بلاک کرده باشید.
4- انتخاب پرونده های پیشفرض
برای سایت خود پرونده های پیشفرض (Default Documents) انتخاب کنید به این ترتیب از لیست کردن پوشه ها می توان جلوگیری کرد مخصوصا زمانیکه آدرس مستقیم پوشه وارد شده باشد توجه داشته باشید که این مورد هم می تواند از طریق htaccess مشخص شود.
ب) سمت کاربر / بازدید کننده
قبل از هرچیزی شما می توانید سایت مورد نظر را چک کنید تا ببینید سایت برای شما غیر قابل دسترس است یا برای همه برای اینکار می توانید از دو روش زیر عمل کنید.
روش اول: برای اینکه شما بدانید آدرس سایت برای شما غیر قابل دسترس است یا همه کلیک کنید.
روش دوم: برای اینکه شما چک کنید که آدرس مورد نظر در دسترس است یا خیر کلیک کنید.
ابتدا مطمن شوید که آدرس IP شما در لیست سیاه قرار نگرفته باشد در غیر اینصورت شما با این خطا مواجه خواهید شد برای رفع خطای داخلی سرور می توانید با مدیر سایت مورد نظر صحبت کنید یا از طریق ارائه دهنده خدمات اینترنت یا در اصطلاح ISP خود بخواهید تا آدرس IP شما را تغییر دهد یا اینکه از نرم افزارهای تغییر IP یا همان فیلترشکن یا Proxy استفاده نمائید(برای استفاده از سرویس های گوگل که برای کشور ایران قابل استفاده نیست(به خاطر شرایط تحریم) شما می توانید از فیلتر شکن یا Proxy استفاده نمائید.)
آدرس صفحه یا همان URL را چک کنید و یک بار علامت اسلش / آخر آن در صورت وجود را بردارید دوباره امتحان کنید همچنین مسیر صفحات پیشفرض مانند index.php و index.html را به آخر آن اضافه کرده و دوباره تست کنید .
صفحه مورد نظر را چند بار رفرش کنید گاهی اوقات ممکن است با چند بار به روزرسانی صفحه مشکل حل شود.
کش مرورگر خود را پاک کنید زیرا ممکن است مشکل مورد نظر رفع شده باشد ولی محتوای صفحه خطا به دلیل ذخیره سازی توسط مرورگر به کاربر نشان داده شود.
غیر فعال سازی افزونه امنیتی
گاهی اوقات در سایت های وردپرسی ممکن است دلیل بروز خطا محدود سازی توسط افزونه امنیتی نصب شده بر روی سایت باشد. که شما می توانید با غیر فعال سازی یا برررسی تنظیمات افزونه مشکل را رفع نمائید.