ارور 403 یا 403 forbidden error ، دسترسی کاربر به یک صفحه را ممنوع میکند. گاهی ممکن است این پیغام، به دلیل یک اقدام امنیتی از طرف صاحب سایت باشد ولی در اکثر موارد، در اثر تنظیمات نادرست و به صورت ناخواسته رخ میدهد. پس اگر کاربر سایت شما یا خودتان این خطا را مشاهده کردید، باید هرچه سریعتر آن را برطرف کنید تا کاربران به محتوای آن صفحه دسترسی داشته باشند. چون عدم دسترسی به محتوای یک صفحه، موجب نارضایتی کاربر و احتمالاً خروج از سایت شما خواهد شد. نگران نباشید، ارور 403 forbidden با چند کلیک ساده برطرف میشود که در این مقاله روشهای رفع خطای 403 را کامل توضیح خواهم داد.
خطای 403 forbidden چیست؟
خطای 403 یکی از خطاهای معروف سایت وردپرسی و جز خطاهای 4xx است. وقتی کاربر به یک صفحه دسترسی لازم نداشته باشد، با این خطا رو به رو میشود. در واقع خطای 403 وقتی رخ میدهد که سرور درخواست کاربر را متوجه شده است، اما به کاربر اجازه دسترسی به آن صفحه را نمیدهد. ارور 403 ممکن است با یکی از حالتهای زیر نمایش داده شود که در همه آنها عدد 403 دیده میشود:
403 Forbidden
403 Forbidden, Access to this resource on the server is denied!
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 – You don’t have permission to access ‘/’ on this server. Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request.
اگر در هنگام باز کردن یکی از صفحات سایت شما، چنین پیغامی نمایش داده میشود و خودتان دسترسی به آن صفحه را محدود نکردهاید، باید این ارور را برطرف کنید. در واقع این خطا هنگاهی رخ میدهد که به هر دلیلی، سرور به مرورگر اجازه باز کردن صفحه را نمیدهد و دسترسی را ممنوع کرده است.
اگر حالت دیگری از نمایش این خطا را مشاهده کردید، تعجب نکنید! چون مدیر هر سایت میتواند نوع نمایش خطا را شخصیسازی کند.
علت نمایش خطای 403 در وردپرس
نمایش ارور 403 در وردپرس، میتواند به دلایل مختلف باشد. همانطور که گفته شد، گاهی ممکن است تعمداً دسترسی به یک صفحه یا پوشه محدود شده باشد و گاهی میتواند نتیجه تنظیمات نادرست باشد. در ادامه دلیلهای مختلف ارور HTTP 403 در سایت وردپرسی لیست شده است.
- تنظیمات نادرست در فایل .htaccess
- تنظیمات مجوز فایل یا پوشه: شما میتوانید مشخص کنید چه کسانی مجاز هستند یک پوشه را بخوانند. گاهی برای حفظ امنیت سایت، دسترسی محدود میشود. ولی در برخی مواقع تنظیمات نادرست باعث ایجاد ممنوعیت در دسترسی میشود.
- تداخل یا ناسازگاری افزونهها
- پیکربندی اشتباه یک افزونه یا استفاده از افزونهای با کدنویسی ضعیف
- نام فایل صفحه اصلی سایت در هاست، index.html یا index.php نیست.
- آدرس صفحه توسط مدیر سایت تغییر کرده ولی کاربر آدرس قدیمی را در مرورگر وارد کرده است.
- هاست تغییر کرده ولی تنظیمات مربوطه هنوز اعمال نشده یا اشتباهی در تنظیمات رخ داده است.
- مشکلات امنیتی در سرویس ارائه دهنده اینترنت
روش های رفع خطای 403 در سایت وردپرسی به سادگی
هدف اصلی این مقاله این است که بتوانید به راحتی علت خطای forbidden 403 را در سایت وردپرسی بیابید و به آسانی آن را رفع کنید. در این قسمت روشهای مختلف حل مشکل 403 forbidden را مشاهده میکنید.
- پاک کردن کش مرورگر
- بازگشت به نسخه سالم سایت با استفاده از بکاپ هاست
- غیرفعال کردن افزونهها
- تغییر قالب سایت
- بررسی فایل htaccess.
- بررسی تنظیمات سطح دسترسی فایل یا پوشه
- محافظت از هات لینک
- تماس با پشتیبانی هاست
- پیکربندی مجدد مالکیت فایل
- بررسی A record در تنظیمات DNS
- غیرفعال کردن CDN
- آپلود سند index در هاست
- بررسی وجود ویروس در سایت
در ادامه هریک از روشهای رفع خطای 403 را توضیح خواهم داد.
نکته بسیار مهم: قبل از استفاده از هریک از روشها، از تمامی اطلاعات سایت بکاپ (نسخه پشتیبان) بگیرید تا در صورت بروز مشکل، به راحتی بتوانید سایت را بازیابی کنید.
1. رفع ارور 403 با پاک کردن کش مرورگر
سادهترین راه حل برای رفع ارور 403، پاک کردن کش مرورگر است. وظیفه کش مرورگر این است که اطلاعات سایتی که یک مرتبه باز کردهاید را در خود ذخیره میکند تا در دفعات بعدی آن صفحه با سرعت بیشتری باز شود. ممکن است آدرس صفحه تغییر کرده باشد ولی مرورگر به آدرس قبلی مراجعه میکند. در این حالت شاهد خطای 403 خواهید بود. پس اولین قدم بعد از دیدن خطای 403، پاک کردن کش مرورگر یا باز کردن آن صفحه از سایت در حالت ناشناس (incognito) است.
برای پاک کردن کش مرورگر کروم، روی سه نقطه بالا سمت راست کلیک کرده و گزینه more tools را انتخاب کنید. سپس clear browsing data را انتخاب کنید.
در صفحه clear browsing data، از منوی کشویی Time range مدت زمان پاک کردن دادهها را انتخاب کنید و تیک دو گزینه Cookies and other site data و Cached images and files را فعال کرده و Clear data را بزنید.
اگر قبلاً وارد سایتهای مختلف شدهاید؛ پاک کردن حافظه کش، باعث خروج شما از تمامی آنها میشود.
2. رفع خطای 403 با بازگشت به نسخه سالم سایت با استفاده از بکاپ هاست
اگر تا چند روز پیش سایت شما به خوبی کار میکرده و به تازگی شاهد ارور 403 هستید، با استفاده از بکاپ هاست به نسخه چند روز قبل سایت برگردید تا مشکل برطرف شود.
3. حل خطای 403 در وردپرس با غیرفعال کردن افزونهها
گاهی به دلیل تداخل افزونهها یا استفاده از یک افزونه غیر استاندارد با خطای 403 روبرو میشویم. یکی از راهحلهای مرسوم برای رفع مشکلات سایت وردپرسی این است که همه افزونهها را غیرفعال کنید. اگر با غیرفعال کردن افزونهها، خطای 403 برطرف شد، یعنی یکی از افزونهها این خطا را ایجاد کرده است. در مرحله بعد میتوانید یکی یکی افزونهها را فعال کنید و از این طریق متوجه شوید کدام افزونه باعث بروز این خطا شده است.
برای غیرفعال کردن افزونهها، وارد کنترل پنل هاست شوید. File Manager را باز کنید:
پوشه public_html را باز کرده و روی پوشه wp_content کلیک کنید. حالا پوشه plugins را پیدا کنید:
روی پوشه plugins راست کلیک کرده و با استفاده از گزینه Rename نام این پوشه را به یک نام دلخواه تغییر دهید.
با این کار همه افزونهها غیرفعال میشوند. سپس بررسی کنید که هنوز ارور 403 وجود دارد یا نه. اگر ارور از بین رفته باشد، یعنی یکی از افزونهها خطای 403 را ایجاد کرده است. مجدداً نام پوشه را به plugins برگردانید. با این کار همه افزونهها فعال میشوند. حالا که مطمئن شدید اشکال از یک افزونه است، از طریق داشبورد وردپرس، یکی یکی افزونهها را غیرفعال کنید تا متوجه شوید کدام افزونه باعث بروز خطای 403 شده است. بعد از شناسایی افزونه مخرب، میتوانید با حذف افزونه، به روزرسانی افزونه یا روشهای دیگر، خطا را برطرف کنید.
4. تغییر قالب سایت
ممکن است علت خطای 403، استفاده از قالب غیراستاندارد باشد. پس یکی از راهحلها برای رفع این خطا، تغییر قالب سایت است. میتوانید به جای قالب فعلی سایت، از قالبهای پیشفرض وردپرس استفاده کنید. اگر با تغییر قالب خطا از بین برود، احتمالاً دلیل بروز خطای 403 قالب سایت شما است.
برای تغییر قالب و انتخاب یک پوسته مناسب برای سایت وردپرسی، از مقالات “راهنمای انتخاب قالب وردپرس” ، “بهترین قالب وردپرس برای سایت آموزشی” و “راهنمای انتخاب بهترین قالب فروشگاهی وردپرس” کمک بگیرید.
5. رفع خطای 403 با بررسی فایل htaccess.
مشاهده ارور 403 forbidden ممکن است بخاطر وجود یک مشکل در فایل .htaccess باشد. برای اینکه مطمئن شویم:
- ابتدا فایل .htaccess را در هاست پاک میکنیم.
- سپس مجدداً صفحهای که ارور 403 داده بود را باز میکنیم. اگر ارور 403 برطرف شده بود، یعنی مشکل از فایل .htaccess بوده است.
- فراموش نکنید باید مجدداً نسخه سالم فایل .htaccess را در هاست بارگذاری کنید.
- اگر با پاک کردن فایل .htaccess ارور 403 از بین نرفت، یعنی مشکل از فایل .htaccess نیست و باید از بقیه روشهای این مقاله استفاده کنید.
نگران نباشید، در ادامه همه این مراحل را توضیح خواهم داد.
مرحله اول: پاک کردن فایل .htaccess
وارد هاست سایت شوید. فایل منیجر هاست را باز کنید (تصاویر زیر از هاست سی پنل گرفته شده است).
سپس فایل public_html را باز کنید.
در این مرحله باید روی فایل .htaccess کلیک راست کرده و آن را حذف کنید. بهتر است قبل از حذف، برای اطمینان این فایل را دانلود کنید (با کلیک راست روی فایل .htaccess گزینه دانلود نمایش داده میشود).
اگر در پوشه public_html فایل .htaccess را مشاهده نمیکنید، کافیست مطابق شکل زیر، وارد setting هاست شده و گزینه Show Hidden Files را فعال کنید و save را بزنید.
مرحله دوم: بارگذاری مجدد فایل .htaccess در هاست
حالا باید مجدداً فایل .htaccess را ایجاد کنید. برای انجام این کار، وارد پیشخوان وردپرس شوید. در قسمت تنظیمات، گزینه پیوندهای یکتا را انتخاب کرده و روی “ذخیره تغییرات” کلیک کنید. با این کار، فایل .htaccess مجدداً ایجاد میشود. برای آشنایی بیشتر با پیشخوان، مقاله ” نحوه کار با پیشخوان وردپرس” را مطالعه کنید.
اگر علت ایجاد خطای 403، وجود مشکل در فایل .htaccess باشد، با انجام این مراحل رفع خواهد شد.
مشکل دیگری که ممکن است برای فایل .htaccess پیش بیاید، این است که این فایل در پوشه home هاست قرار گیرد. این اتفاق میتواند به صورت دستی یا هنگام انتقال بکاپ هاست، رخ دهد. برای رفع این مشکل کافیست وارد home هاست شده و فایل .htaccess را حذف کنید.
6. رفع خطای 403 با بررسی تنظیمات سطح دسترسی فایل یا پوشه
فایلهایی که در وردپرس ساخته میشوند، دارای سطح دسترسی مشخصی هستند. این سطح دسترسی نوشتن، خواندن و اجرای هر فایل را تعیین میکند. اگر سطح دسترسی درست تنظیم نشده باشد، با خطای HTTP 403 مواجه خواهید شد. برای حل این مشکل وارد هاست سایت شده و روی File manager هاست کلیک کنید. پوشه public_html را باز کنید. در مقابل هر پوشه و هر فایل، یک عدد نوشته شده که همان سطح دسترسی است.
با کلیک روی هر عدد، به راحتی میتوانید آن را تغییر دهید و در واقع سطح دسترسی فایل یا پوشه مورد نظرتان را تغییر خواهید داد.
روش دیگر این است که روی دایرکتوری یا فایل مورد نظر کلیک راست کرده و گزینه change permissions را انتخاب کنید.
سپس صفحه زیر را مشاهده خواهید کرد. با فعال یا غیرفعال کردن هریک از گزینهها، عدد سطح دسترسی تغییر میکند و در نهایت برای اعمال تغییرات، بر روی Change Permissions کلیک کنید.
طبق قواعدی که توسط وردپرس اعلام شده است، سطح دسترسی همه دایرکتوری ها باید 755 یا 750 باشند و سطح دسترسی همه فایل ها باید 644 یا 640 باشند. به غیر از فایل wp-config.php که باید 440 یا 400 باشد تا دیگر کاربران نتوانند آن را بخوانند.
7. محافظت از هات لینک
برای هر عکسی که در سایت خود آپلود میکنید، یک لینک ایجاد میشود. اگر از این لینک محافظت نکنید، دیگران میتوانند با استفاده از آن لینک در سایت خود، از منابع هاست شما استفاده کنند. به حفاظت از این لینکها، محافظت از هات لینک میگویند. روشهای مختلفی برای محافظت از هات لینک وجود دارد. اگر این روشها به دُرستی اجرا نشوند، میتواند منجر به خطای 403 در صفحات سایت شود.
8. تماس با پشتیبانی هاست
اگر موارد قبلی را بررسی کردهاید و همچنان خطای 403 نمایش داده میشود، میتوانید با شرکت هاستینگ سایتتان تماس گرفته و از آنها کمک بخواهید.
9. پیکربندی مجدد مالکیت فایل
اگر از سرور لینوکس یا VPS استفاده میکنید، ممکن است مالکیت اشتباه فایل، دلیل خطای 403 باشد. در این سرورها میتوان برای هر فایل و پوشه، یک مالک یا گروه تعیین کرد. اگر این مالکیت اشتباه تعیین شود، باعث بروز خطای forbidden 403 میشود. برای تغییر مالکیت، به دسترسی SSH و برای اتصال به VPS به ترمینال SSH نیاز دارید.
با استفاده از دستور SSH، میتوانید مالکیت هر فایل را بررسی کنید:
ls -1 [file name]
باید مالکیتی که نمایش داده میشود با نام کاربری هاست شما یکسان باشد. اگر متفاوت است، از دستور chown Linux برای تغییر مالکیت فایل استفاده کنید:
chown [owner][:group] [file name]
اگر برای انجام این مراحل تسلط کافی ندارید، میتوانید از شرکت هاستینگ سایتتان کمک بگیرید.
10. بررسی A record در تنظیمات DNS
دسترسی به هر سرور با یک کد شناسایی به نام IP صورت میگیرد. با انجام تنظیمات دُرست DNS ، نام دامنه سایت شما به عنوان آی پی سایت شناخته میشود. اگر به هر دلیلی نام دامنه به آی پی اشتباه اشاره کند، ممکن است خطای 403 مشاهده شود.
وقتی هاست را تغییر دادهاید ولی DNS ها تغییر نکرده است، دامنه سایت شما به هاست قبلی متصل میشود. ممکن است هاست قبلی حساب شما را منقضی کرده و کد خطای 403 فعال شده باشد. پس مطمئن شوید تنظیمات DNS به درستی اعمال شده باشد.
11. غیرفعال کردن CDN
اگر از CDN (Content Delivery Network) استفاده میکنید، بهتر است آن را غیرفعال کرده و صفحه دارای خطای 403 را مجدداً بررسی کنید. با این کار مطمئن خواهید شد مشکل از CDN است یا خیر!
12. آپلود سند index در هاست
سرور به صورت پیش فرض به دنبال فایلهایی با نام و پسوند خاص میگردد تا آنها را به عنوان صفحه اصلی سایتتان نمایش دهد. این فایلها معمولاً دارای نامهای index.php، index.html هستند. برای اینکه صفحه اصلی سایت نمایش داده شود، باید یک فایل با نام index.html و یا index.php در پوشه public_html خود داشته باشید. در واقع نام فایل صفحه اصلی index.html و یا index.php است.
اگر نام صفحه اصلی جز این باشد، ممکن است خطای 403 رخ دهد. برای حل این مشکل، دو راه حل وجود دارد. راه حل اول این است که در هاست خود، نام صفحه اصلی را به index.php یا index.html تغییر دهید.
راه حل دوم این است که پوشه public_html هاست را باز کنید. یک فایل index.html یا index.php در پوشه public_html خود آپلود کنید.
روی فایل .htaccess کلیک راست کرده و گزینه Edit را انتخاب کنید. کد زیر را به فایل .htaccess اضافه کنید.
Redirect /index.html /homepage.html
به جای homepage.html نام واقعی صفحه اصلی را بنویسید.
13. بررسی وجود ویروس در سایت
اگر سایت شما به ویروس آلوده شده باشد، کدهای مختلف وارد فایل .htaccess میشود. در این حالت، روشهای قبلی تاثیرگذار نخواهند بود و همچنان خطای 403 را مشاهده خواهید کرد. پس حتما باید با استفاده از افزونههای امنیتی و روشهای مختلف دیگر، امنیت سایت وردپرسی را بهبود دهیم. برای رسیدن به این هدف، مقاله ” افزایش امنیت سایت وردپرسی ” برای شما مفید خواهد بود.
در این مقاله با یکی از کدهای خطای HTTP یعنی ارور forbidden 403 و روشهای رفع آن آشنا شدیم. خطای 403 یکی از خطاهای مهم سایت است که باید به سرعت برطرف شود. چون دسترسی مخاطب به محتوای شما را محدود میکند. رفع ارور 403 با چالشهای مختلفی همراه است ولی استفاده از روشهای این مقاله کار را برای شما آسان میکند.
در قسمت دیدگاهها پاسخگوی سوالات شما پیرامون رفع خطای 403 در سایت وردپرسی هستیم. همچنین اگر به جز موارد ذکر شده، روش دیگری برای حل خطای 403 میشناسید، لطفا در قسمت دیدگاهها با ما و کاربران وب زوج به اشتراک بگذارید.