خطای 403 چیست و چگونه Error 403 forbidden را حل کنیم؟
خطای 403 Forbidden یعنی شما اجازه دسترسی به این منبع را ندارید. این کد وضعیت HTTP است که هنگامی که سرور وب درخواست را درک می کند اما نمی تواند دسترسی اضافی را فراهم کند، اتفاق می افتد. در پاسخ به سؤال “ارور 403 چیست” باید بگوییم در واقع به شما اجازه دسترسی به این صفحه را نمی دهد.
چه عواملی باعث ایجاد خطای 403 می شود؟
قبل از این که مشکل را حل کنید، مهم است که علت ایجاد مشکل را بدانید. در صورتی که در سایت خود با خطای 403 روبرو شدید، دو دلیل احتمالی آن عبارتند از:
- پرونده .htaccess خراب است
- پیکربندی مجوزهای پرونده اشتباه است
همچنین ممکن است به دلیل مشکل در افزونهای که در سایت خود استفاده میکنید، خطا را مشاهده کرده باشید. در این مقاله، ما به شما نشان خواهیم داد که چگونه همه این مشکلات را عیب یابی کنید.
بعضی از دلایل خطای 403 Forbidden در HTTP به دلیل برخی اشتباهات دسترسی در سمت کلاینت هستند که به معنای آن است که معمولاً می توانید خودتان مشکل را حل کنید.
یکی از عوامل شایع ایجاد این خطاها، تنظیمات مجوز فایل یا پوشه ها است که کنترل کننده کسانی هستند که می توانند فایل یا پوشه را بخوانند، بنویسند و اجرا کنند.
در این مورد دو احتمال وجود دارد: یا صاحب وب سایت تنظیمات را به گونه ای ویرایش کرده است که شما نمی توانید به منابع دسترسی داشته باشید، یا او مجوزهای صحیح را تنظیم نکرده است.
علت دوم رایج، تنظیمات نادرست یا فاسد در فایل.htaccess است. این ممکن است پس از اعمال تغییرات در فایل رخ دهد. خوشبختانه، با ایجاد یک فایل پیکربندی سرور جدید، مشکل به راحتی قابل حل است.
علاوه بر دو علت رایج ذکر شده، دلایل دیگری نیز برای این خطا وجود دارد:
صفحه اصلی وبسایت گم شده است (Missing index page): نام صفحه اصلی وبسایت index.html یا index.php نامگذاری نشده است.
افزونه نادرست وردپرس (Faulty WordPress plugin)- اگر یک افزونه وردپرس به درستی پیکربندی نشده یا با یک افزونه دیگر سازگار نباشد، ممکن است خطاهای 403 را ایجاد کند.
آدرس IP اشتباه – نام دامنه به یک آدرس IP قدیمی یا اشتباه اشاره می کند که در حال حاضر یک وب سایت را میزبانی می کند که امکان دسترسی شما به آن را مسدود می کند.
بدافزار Malware – آلودگی به بدافزار malware ممکن است باعث خرابی مداوم فایل htaccess. شود. برای بازگرداندن فایل، باید این بدافزار را حذف کنید.
لینک صفحه جدید – ممکن است مالک وبسایت لینک صفحه را بهروز رسانی کرده باشد و اکنون با نسخه کش شده متفاوت است.
نحوه نمایش ارور 403
بر اساس نوع وب سرور و مرورگر، ممکن است نحوه نمایش این خطا متفاوت باشد. اما وجه مشترک تمام آنها عدد 403 است که به معنی ممنوعیت دسترسی است. در صورتی که برای بازدید هر سایتی یکی از پیامهای زیر را مشاهده کردید به معنی ممنوعیت دسترسی شما است.
- Forbidden – You don’t have permission to access / on this server
- 403 – Forbidden: Access is denied
- Error 403 – Forbidden
- 403 – Forbidden Error – You are not allowed to access this address
- 403 Forbidden – nginx
- HTTP Error 403 – Forbidden – You do not have permission to access the document or program you requested
- 403 Forbidden – Access to this resource on the server is denied
- That’s an error. Your client does not have permission to get URL / from this server
- You are not authorized to view this page
- It appears you don’t have permission to access this pageچگونه خطای 403 Forbidden را برطرف کنیم؟
چگونه خطای 403 Forbidden را برطرف کنیم؟
پس از اینکه دریافتیم علت نمایش ارور 403 چیست، نوبت به راههای رفع آن میرسد. اگر این خطا روی وبسایت شما ظاهر شده است، باید نسبت به رفع خطای 403 در سمت سرور اقدام کنید. روشهای زیر کمکتان میکند این نگهبان خشن و سرسخت را از جلوی راهتان کنار بزنید.
- تایید رکورد A
- حذف هر نوع بدافزار
- ویرایش مالکیت فایل
- بررسی فایل .htaccess
- آپلود صفحه فرمان اصلی
- غیرفعال کردن پلاگینهای سایت
- پاک کردن کش و تاریخچه مرورگر وب
- بازنشانی دسترسی فایلها و پوشههای سایت
فایل .htaccess را بررسی کنید
شاید چندان ارتباط مسالمتآمیزی با فایل htaccess برقرار نکرده باشید. اما جالب است بدانید هنگام بروز خطاهای مختلف روی سایتتان نقش اصلی را برای برطرف کردن مشکل ایفا میکند. نحوه رفع خطای 403 از طریق Cpanel در دسترسی به فایل htaccess بهصورت زیر است:
گام اول: از طریق پیشخوان کنترل پنل، وارد پوشه File Manager شوید.
گام دوم: در پوشه public_html دنبال فایل htaccess بگردید.
اگر فایل را پیدا نکردید، در قسمت گوشه سمت راست در بالای صفحه روی گزینه Show Setting کلیک کنید و تیک عبارت Show Hidden File را بزنید تا فایلهای پنهان برایتان ظاهر شوند.
گام سوم: روی فایل راست کلیک کرده و گزینه Download را بزنید تا یک نسخه بکاپ از این فایل ایجاد شود.
گام چهارم: اکنون، پس از تهیه نسخه بکاپ میتوانید فایل را حذف کنید.
گام پنجم: سایتتان را چک کنید. اگر دسترسی بهراحتی امکانپذیر بود و اثری از خطای 403 مشاهده نکردید، یعنی عامل نفوذی در فایل htaccess وجود دارد.
گام ششم: برای ایجاد فایل htaccess جدید، وارد داشبورد وردپرس خود شوید و روی setting و سپس پیوندهای دائمی یا permalinks کلیک کنید.
گام هفتم: بدون ایجاد هیچ تغییری روی دکمه Save Changes در پایین صفحه کلیک کنید تا فایل htaccess ایجاد شود.
اگر مشکل هنوز حل نشد، روشهای دیگر را امتحان کنید.
مجوزهای فایل و دایرکتوریها را بازنشانی کنید
مجوزهای فایل و دایرکتوری شبیه به کلید خانه هستند. هرکس این کلید را داشته باشد، امکان دسترسی خواندن، نوشتن یا کنترل فایلها را نیز خواهد داشت. اگر مجوزهای فایل یا دایرکتوری اشتباه باشد ممکن است با ارور http 403 روبهرو شوید. این یعنی یک کلید اشتباهی در دست دارید که نمیتوانید وارد خانه شوید. بههمین دلیل نیاز است این کلیدها را عوض کنید. بهعبارتی، مجوزهای فایل یا دایرکتوری را مجددا بازنشانی کنید. برای این کار نیاز است پوشه FTP را ویرایش کنید. شما میتوانید از برنامه مدیریت فایل Filezilla برای دسترسی به این پوشه استفاده کنید.
گام اول: از طریق FTP یا کنترل پنل به سرور خود متصل شوید.
گام دوم: روی پوشه public_html راست کلیک کرده و عبارت File Attributes را انتخاب کنید.
گام سوم: در قسمت Numeric value مقدار 755 را وارد کرده و گزینه Apply to Directory only را انتخاب کنید.
بهطور کلی، مقدار عددی 755 در قسمت Numeric value مربوط به دسترسی پوشهها، مقدار 644 مربوط به محتوای ثابت یا استاتیک و مقدار 700 مربوط به محتوای پویا یا داینامیک است.
گام چهارم: پس از تغییر دسترسی به فایل، گام دوم و سوم را مجدد تکرار کنید و این بار در Numeric value مقدار 644 را وارد کرده و تیک گزینه Apply to files only را بزنید.
پس از انجام این مراحل، یک بار دیگر سایتتان را بررسی کنید که آیا از شر خطای 403 راحت شدید یا خیر.
نام و آیپی دامنه را بررسی کنید
اگر آیپی دامنه شما به آدرسی غیر از دامنه وصل شود و یا نام دامنه با آیپی مطابق نباشد، خطای 403 ظاهر میشود. در این مورد، نیاز است Record A دامنهتان را بررسی کنید و ببینید آیا DNS بهدرستی تنظیم شده است یا خیر.
پلاگینهای وردپرس را غیرفعال کنید
اگر تا به این مرحله از مقاله «ارور 403 چیست» پیش رفتید و هیچ یک از روشهایی که گفتیم کار نکرد، احتمالا باید سر وقت پلاگینها بروید. یک یا گروهی از پلاگینهای نفوذی وجود دارند که مانع عملکرد درست وبسایتتان میشوند. بهجای اینکه بهصورت دستی و یکی یکی پلاگینها را غیرفعال کنید، پیشنهاد میکنیم بهطور یکجا و از طریق پنل میزبانی، آنها را غیرفعال کنید و بررسی کنید آیا موفق به رفع خطای 403 شدید یا همچنان باید سراغ راهکارهای بعدی بروید.
گام اول: برای غیرفعالسازی بهصورت یکجا، وارد پنل میزبانی خود شوید و از پوشه File Manager به قسمت public_html بروید. سپس پوشه wp-content را انتخاب کنید.
گام دوم: وارد پوشه plugins شوید
گام سوم: نام پوشه را با نام دیگری مانند disabled-plugins تغییر دهید. با تغییر نام فایل، تمام افزونهها غیرفعال میشوند.
گام چهارم: سایت را بررسی کنید. اگر اثری از خطای 403 ندید، یعنی یک عامل نفوذی در افزونهها وجود دارد که باید غیرفعال شود. اکنون یکی یکی افزونهها را فعال کرده و بررسی کنید آیا سایت کار میکند یا خیر.
در همین مرحله، اگر همچنان سایتتان با خطای 403 forbidden دستوپنجه نرم میکند، بهتر است ریش و قیچی را به سرویس میزبانی خود بسپارید تا مشکل را برطرف کنند. اگر خودتان قصد دارید کار را یکسره کنید، پس سراغ راهکار بعدی بروید.
نام و آیپی دامنه را بررسی کنید
اگر آیپی دامنه شما به آدرسی غیر از دامنه وصل شود و یا نام دامنه با آیپی مطابق نباشد، خطای 403 ظاهر میشود. در این مورد، نیاز است Record A دامنهتان را بررسی کنید و ببینید آیا DNS بهدرستی تنظیم شده است یا خیر.
ابزار تغییر آیپی خود را قطع یا وصل کنید
اتفاق مشابهی که همه ما در بازدید از بسیاری اغلب سایتهای خارجی تجربه کردیم، اتصال به این سایتها بدون استفاده از ابزار تغییر آیپی بوده که موجب بروز خطای 403 شده است. دراینشرایط، بهراحتی میتوانید این مشکل را با روشنکردن ابزار تغییر آیپی خود یا تغییر آیپی سرور برطرف کنید و موفق به رفع خطای 403 شوید.
یک صفحه Index جدید آپلود کنید
یکی از دلایل احتمالی بروز خطای 403، ممکن است بهعلت تغییر صفحه اصلی وبسایتتان باشد. صفحه اصلی وبسایت باید در فایل index.html یا index.php وبسایتتان وجود داشته باشد. اگر صفحه اصلی سایت در یکی از این فایلها نام دیگری دارد، نیاز است از روشهای زیر برای رفع این مشکل اقدام کنید:
- ایجاد ریدایرکت به صفحه اصلی
- تغییر نام صفحه اصلی به index.html یا index.php
درصورتیکه قصد دارید نام فعلی وبسایتتان را حفظ کنید، یک صفحه index.html یا index.php در دایرکتوری public_html ایجاد کنید و به صفحه اصلی وبسایتتان ریدایرکت بزنید. برای ایجاد ریدایرکت میتوانید اقدامات زیر را انجام دهید:
یک فایل جدید index.html یا index.php در دایرکتوری public_html ایجاد کنید.
فایل .htaccess را باز کنید.
سپس کد زیر را به فایل .htaccess اضافه کنید تا فایلهای index.html یا index.php به صفحه اصلی شما ریدایرکت شود. در دستور زیر، نام homepage.html را با نام صفحه اصلی سایتتان جایگزین کنید.
Redirect /index.html /homepage.html
برای مثال، فرض کنید نام صفحه اصلی وبسایت شما parspack.html است. برای ریدایرکت به صفحه اصلی، کد را بهصورت زیر در فایل .htaccess قرار میدهیم:
Redirect /index.html /parspack.html
از ابزار Sitechecker استفاده کنید
ابزار Sitechecker بهراحتی با چک کردن فایلها و لینکهای وبسایت شما گزارش دقیقی از سایت در اختیارتان میگذارد. این خزنده وبسایت، ابزار دقیق سئو محسوب میشود. شما میتوانید بهطور مداوم صفحات سایت را از نظر بروز خطای 403 بررسی کنید و هرگونه خطایی را که در وبسایتتان وجود دارد، با این ابزار کشف و برطرف کنید.
یک اسکن اساسی برای شناسایی بدافزارها انجام دهید
یکی از دلایل اساسی در بروز خطای 403 وجود بدافزارهایی است که حتی با ویرایش فایل و تمام راهکارهای بالا همچنان بهقوت خود باقی میماند. برای تشخیص و اسکن بدافزارها در وردپرس میتوانید از افزونههایی مانند Sucuri یا Wordfence استفاده کنید. سپس اگر سایت وردپرسیتان آلوده به بدافزار بود، از طریق همین افزونهها میتوانید آن را حذف کنید.