What is the 403 Forbidden error and how to fix it
زمانی که وب سرور به یک صفحه وب یا بخشی از محتوای وبسایت دسترسی نداشته باشد، خطای 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 Forbidden
یکی از دلایل رایج بروز خطای 403 در برخی وبسایتها، تنظیمات نادرست سطح دسترسی یا محدودیتهای سرور اشتراکی است. برای رفع این مشکل بهصورت ریشهای، بسیاری از مدیران سایتها تصمیم میگیرند از هاست اشتراکی به سرور مجازی مهاجرت کنند تا کنترل بیشتری روی پیکربندی سرور و مجوزهای دسترسی داشته باشند. در صورتی که شما هم قصد چنین کاری را دارید، پیشنهاد میکنیم از بخش سرور مجازی VPS سایت بازدید کرده و بهترین گزینه را متناسب با نیاز خود انتخاب کنید.
اما موارد رایجی که باعث دریافت خطای 403 میشود عبارتند از:
- خالی بودن directory وبسایت: در صورتی که هیچ فایل index.php و یا index.html در directory سایت شما وجود نداشته باشد این خطا دریافت میگردد.
- گم شدن فایل index: در صورتی که فایل index وبسایت شما با نام دیگری باشد این فایل شناسایی نمیشود و خطای 403 دریافت میشود.
- Permission/ownership اشتباه: در صورتی که دسترسی و یا permission یک فایل یا یک فولدر که سعی در دسترسی به آن از طریق مرورگر دارید صحیح نباشد خطای عدم دسترسی و 403 دریافت خواهید کرد.
- پیکربندی اشتباه فایل htaccess.: فایل htaccess. تنظیمات و پیکربندیهای حیاتی وبسایت را در خود دارد و ممکن است در صورت پیکربندی اشتباه باعث دریافت خطای 403 در وبسایت گردد.
- آلوده شدن وبسایت به بدافزار: در صورتی که وبسایت شما به بدافزار آلوده شده باشد ممکن است بر روی فایل htaccess تاثیرگذار باشد.
- کش بودن محتوا: در برخی موارد ممکن است بخشی از محتوای وبسایت خود را آپدیت کنید اما پس از فراخوانی محتوای آپدیت شده با ارور 403 مواجه شوید. دلیل این مورد کش شدن محتوای قبلی میباشد که در حال حاضر با آپدیت شدن محتوا دسترسی به آن ممکن نیست.
- پلاگینها: پیکربندی نادرست افزونههای وردپرس یا ناسازگاری آنها میتواند خطای 403 را ایجاد کند.
گر با مشکلات دسترسی مواجهاید و نیاز به کنترل کاملتر روی سرور و پیکربندیها دارید، پیشنهاد میکنیم برای ارتقاء کیفیت و امنیت سایت خود از سرور مجازی استفاده نمایید. با انتخاب سرور مجازی سرور.آیآر، از منابع اختصاصی، عملکرد پایدار و پشتیبانی حرفهای بهرهمند شوید و نگرانیهای فنی را به حداقل برسانید.
نحوه برطرف کردن خطای 403 Forbidden
بسته به اینکه بازدیدکننده وبسایت هستید یا مدیر وبسایت، میتوانید چندین کار برای رفع خطای 403 Forbidden انجام دهید.
بررسی directory وبسایت
در صورتی که directory وبسایت شما خالی باشد خطای 403 دریافت خواهید کرد. مطمئن شوید که محتوا در directory صحیح سرور قرار دارد. بسته به وب سروری که از آن استفاده میکنید، directory صحیح برای محتوای شما به شکل زیر است:
- وب سرور Nginxو دایرکتوری آن : /var/www/vhosts/domain.com/httpdocs/
- وب سرور Apache و دایرکتوری آن: /home/username/public_html/
اگر directoryهای بالا در سرور شما موجود نمیباشد میتوانید اقدام به ساختن آنها نمایید.
دلایل و راهحلهای پیشرفتهتر
غیرفعال کردن فایل htaccess. یا ساخت فایل htaccess. جدید
فایل htaccess. یک فایل پیکربندی توزیع شده است که برای مدیریت تنظیمات وب سرور آپاچی استفاده میشود. اگر این فایل به درستی پیکربندی نشده باشد، میتواند به راحتی منجر به خطای 403 شود. برای بررسی اینکه آیا این فایل دلیل مشکل است، میتوانید به صورت موقت نام آن را تغییر دهید (مثلا به htaccess_old.). اگر با این کار مشکل حل شد، به این معنی است که فایل htaccess. اصلی دچار مشکل است و باید یک فایل جدید ایجاد کنید.
به دنبال خرید اس اس ال Sectigo هستید؟
Sectigo یکی از مراکز ارائه دهنده گواهینامه SSL است که تنها پسوندهای بینالمللی را پشتیبانی میکند.
اقدامات پیشگیرانه برای جلوگیری از خطای 403
یکی از بهترین راهها برای جلوگیری از خطای 403، مدیریت صحیح مجوزهای دسترسی است. به یاد داشته باشید که مجوزهای فایل برای فایلها و directoryها متفاوت است. به صورت کلی، توصیه میشود که مجوزهای directoryها روی 755 و مجوزهای فایلها روی 644 تنظیم شوند. این مقادیر به صورت پیشفرض، دسترسی خواندن و نوشتن مناسب را برای کاربر مالک و دسترسی خواندن را برای گروه و دیگران فراهم میکنند.
بررسی مالکیت (Ownership) فایلها و directoryها
علاوه بر مجوزهای دسترسی، مالکیت فایلها و directoryها نیز از اهمیت بالایی برخوردار است. اگر مالکیت به درستی تنظیم نشده باشد، حتی با وجود مجوزهای صحیح، ممکن است وب سرور نتواند به فایلها دسترسی پیدا کند. این مورد به خصوص در محیطهای سرور اشتراکی و پس از انتقال فایلها بین کاربران مختلف رایج است.
بررسی آدرسهای IP و محدودیتهای فایروال
گاهی اوقات، خطای 403 به دلیل محدودیتهای فایروال یا بلوک شدن آدرس IP شما توسط سرور رخ میدهد. بسیاری از سیستمهای امنیتی و فایروالهای وبسایت (مانند WordFence یا iThemes Security) ممکن است به صورت خودکار آدرسهای IP مشکوک را مسدود کنند. اگر به تازگی تغییراتی در تنظیمات امنیتی یا فایروال خود ایجاد کردهاید، بهتر است آن را بررسی کنید.
رفع مشکل برای بازدیدکنندگان وبسایت
اگر به عنوان یک بازدیدکننده با خطای 403 مواجه شدید، میتوانید چند کار ساده انجام دهید:
پاک کردن کش و کوکیهای مرورگر
کش و کوکیهای ذخیرهشده ممکن است حاوی اطلاعات قدیمی و نادرستی باشند که باعث میشود مرورگر شما به صورت نادرست به محتوای وبسایت دسترسی پیدا کند. پاک کردن آنها و تلاش مجدد برای بارگذاری صفحه میتواند مشکل را حل کند.
غیرفعال کردن افزونههای مرورگر
برخی از افزونهها (به خصوص افزونههای امنیتی یا مسدودکننده اسکریپت) ممکن است به صورت ناخواسته باعث مسدود شدن دسترسی به برخی منابع وبسایت شوند. سعی کنید مرورگر خود را در حالت ناشناس (Incognito) باز کنید یا افزونهها را به صورت موقت غیرفعال کنید.
تلاش مجدد بعد از مدتی
ممکن است خطای 403 موقتی باشد و به دلیل بار زیاد روی سرور یا یک مشکل فنی در حال رفع باشد. اگر هیچ یک از راهحلهای بالا جواب نداد، بهتر است کمی صبر کنید و دوباره تلاش کنید.
نتیجهگیری
خطای 403 Forbidden یک مشکل رایج در مدیریت وبسایت است که اغلب به دلیل مشکلات مربوط به مجوزهای دسترسی، پیکربندی سرور، یا مسائل امنیتی ایجاد میشود. با شناخت دقیق دلایل و استفاده از راهحلهای مناسب، میتوانید به سرعت این خطا را برطرف کرده و تجربه کاربری بهتری را برای بازدیدکنندگان خود فراهم آورید. به یاد داشته باشید که نگهداری منظم و بررسی دقیق تنظیمات سرور، کلید جلوگیری از بروز چنین خطاهایی در آینده است.
سوالات متداول
خیر. خطای 403 به این معنی نیست که کل وبسایت شما مسدود شده است. این خطا فقط نشان میدهد که شما (یا بازدیدکننده) مجوز دسترسی به یک فایل یا دایرکتوری خاص را ندارید. بقیه قسمتهای وبسایت که دسترسی به آنها محدود نشده است، به درستی کار خواهند کرد.
بله. اگر رباتهای گوگل (Googlebot) نتوانند به یک صفحه مهم از سایت شما دسترسی پیدا کنند، این موضوع میتواند به رتبه سئوی آن صفحه آسیب بزند. بنابراین، مهم است که سریعا این خطا را برطرف کنید تا صفحات مهم سایت شما برای موتورهای جستجو قابل دسترسی باشند.
بیشتر راهحلهای مربوط به خطای 403 باید توسط مدیر وبسایت انجام شوند، زیرا این خطا معمولا به مجوزهای سرور مربوط است. با این حال، یک بازدیدکننده میتواند چند کار ساده مانند پاک کردن کش مرورگر، غیرفعال کردن افزونهها یا تلاش مجدد با اینترنت دیگر را امتحان کند.
- خطای 403 Forbidden: این خطا زمانی رخ میدهد که سرور درخواست شما را میشناسد اما مجوز دسترسی به آن را به شما نمیدهد.
- خطای 401 Unauthorized: این خطا به این معنی است که شما نیاز به احراز هویت (مانند وارد کردن نام کاربری و رمز عبور) دارید تا به محتوا دسترسی پیدا کنید.
- خطای 404 Not Found: این خطا نشان میدهد که سرور نتوانسته محتوای درخواست شده را پیدا کند، زیرا فایل یا صفحه مورد نظر در آن آدرس وجود ندارد.
معمولا در صفحات خطای 403 پیامی نمایش داده میشود که مسیر فایل یا دایرکتوری مورد نظر را مشخص میکند. اگر این اطلاعات در دسترس نبود، میتوانید لاگهای سرور (Server logs) را بررسی کنید. این لاگها اطلاعات دقیقی در مورد درخواستهای وب و خطاهای مربوط به آنها ارائه میدهند و میتوانند به شما در پیدا کردن فایل اصلی کمک کنند.
عالی بود ممنون از شما
خواهش میکنم سلامت باشید , اگر پیشنهادی بابت قرار دادن مقاله جدید در سایت دارید خوشحال میشیم با ما در میان بگذارید .
من چیزی متوجه نشدم وفعلا به خطای ۴۰۳ برخوردم به زبان ساده تر امکان توضیحش هست؟ ممنونم
برای زمانی که شما این خطا را مشاهده می فرمایید از فایل های دامنه شما می تواند باشد که ممکن است از عدم وجود فایل index.php و یا فایل index.html شما باشد اگر مشکل از عدم وجود این دوفایل نبود می توانید به بررسی فایل htaccess بپردازید برای بررسی می توانید یک مرتبه فایل را rename کرده و سایت را بررسی کنید اگر سایت بالا بود پس مشکل از همین فایل است اگر هم این مورد نبود می توانید به همین ترتیب فایل های پلاگین خود را rename کنید برای برطرف کردن این موضوع نیز موارد گفته شده در مقاله را به ترتیب برای هر قسمت که بود انجام دهید
من چیزی متوجه نشدم امکان توضیح ساده ترش هست؟ ممنونم
درود بله حتما
با سلام
این خطا میتواند از پرمیژن های سمت فولدر ها باشد و یا فایروال روی هاست
در کل سمت سرور باید مدیریت بشه و جز خطا های برنامه نویسی نیست
باسلام
ممنون از اطلاع رسانی شما اما در متن نیز در مورد تغییرات پرمیشنی و یا فایروال نیز توضیح داده ایم
یک لینک سایتی خارجی که فعالیت دارم وقتی روی لینک تماس با پشتیبانی کلیک میکنم برای من باز نمیشه و همین ارور 403 رو میده “با ip ایران وارد میشم” اما وقتی به vpn متصل میشم و لینک رو باز میکنم تماس با پشتیبانی باز میشه
چطوری میشه این مشکل رو برطرف کرد؟
این مورد به دلیل تحریم شدن ایران توسط وبسایت مورد نظر می باشد , شما میتوانید با استفاده از قرار دادن IP های تحریم شکن در آدرس dns خود این مورد را برطرف سازید
حسابم تو اینستا مسدود شده کسی وارد حسابم شده حساب منو چک کنید لطفا بخدا احد واحد دستکاری کردن من اهل خطا نیستم
برای مشکلی که باهاش مواجه هستید متاسفم. متاسفانه موردی که میفرمایید جزو خدمات سایت ما نیست و برای این مورد باید به یک فرد یا مجموعه متخصص در شبکههای اجتماعی ارتباط بگیرید. امیدوارم مشکلتون هر چه سریعتر برطرف بشه.