Что такое ошибка доступа 403 и как ее исправить
08:21, 12.01.2023
Код ответа HTTP 403 Forbidden встречается довольно часто. Эта ошибка возникает в случае, если клиент получает отказ в доступе к ресурсу со стороны сервера. В этой статье мы рассмотрим основные причины и варианты исправления ошибки 403 Forbidden.
Почему возникает ошибка 403
Если вы наблюдаете этот код, это может означать следующее:
- Отказ при попытке получить доступ к системным файлам веб-сервера. Например, если клиент обращается к данным из конфигурационного файла .htaccess или .htpasswd.
- Некорректный формат индексного файла на сервере. Файл main page должен носить название index.shtml, index.html, index.htm, index.phtml или index.php, причем обязательно в нижнем регистре. Если какой-то из этих файлов носит неправильное название, сервер будет выдавать ошибку.
- Неправильно настроен доступ к папке или директории, в которой находится файл. Все директории и папки, к которым должны иметь доступ посетители, не должны содержать каких-либо ограничений.
- Файлы сайта загружены по неверному адресу. В меню хостинга в подразделе «Домены/Мои домены» убедитесь, что все файлы находятся в нужной папке – то есть в корневой.
Также ошибку 403 может провоцировать кривой плагин или расширение. Если причина именно в этом, придется поочередно отключать все плагины и смотреть, какой из них виноват.
Варианты исправления 403 Forbidden
Если администратор веб-сайта целенаправленно ограничил доступ к запрашиваемому файлу, то код HTTP 403 Forbidden возникает корректно, и исправлять в данном случае ничего не требуется. Доступ может быть разрешен для какого-то определенного пула IP-адресов – это делается для защиты панели управления сайта от взлома. Если это так, обойти ограничения можно с помощью корпоративного VPN или устройства, подключенного к внутренней локальной сети. Вы сможете получить доступ к запрашиваемым файлам, если повторите попытку обращения к серверу с разрешенного устройства.
Если же ошибка возникает по другим причинам, то рекомендуем сделать следующее.
Проверить права доступа к папкам и файлам
Ошибка 403 Forbidden может возникать, если доступ к тем или иным файлам пытается получить человек из той группы, для которой предусмотрены какие-то ограничения. Уровней доступа бывает три:
- На чтение – только просмотр содержимого.
- На редактирование – позволяет вносить изменения, создавать новые файлы или удалять старые.
- На выполнение – запуск скриптов или выполнение команд.
Что касается групп пользователей, их также бывает три:
- Владелец – может совершать абсолютно любые действия с файлами и папками.
- Группа доверенных лиц с особыми правами, которые может устанавливать владелец.
- Мир – все прочие пользователи. Сюда относятся и рядовые посетители сайта.
Уровень доступа регулируется трехзначным числом, где каждая цифра будет определять права той или иной категории пользователей. В большинстве случаев используются стандартные права:
- для папок — 755 или 750;
- для файлов — 644 или 640.
При использовании этих значений в 99% случаев никаких проблем не возникнет, это стандарт.
Исключением из этого правила является только файл wp-config.php для сайтов под управлением CMS WordPress. В случае с ним устанавливают права доступа 440 или 400.
Проверить индексный файл
Он содержится в корневом каталоге сайта и загружается каждый раз, когда кто-то пытается загрузить страницу сайта у себя в браузере. Если папка, которая содержит файлы страницы, не имеет индексного файла с указанием в настройках правильного имени, веб-сервер выдаст ошибку 403 Forbidden.
Вам следует проверить следующее:
- правильно ли указано название индексного файла в конфигурационном файле;
- место хранения файла – он должен быть расположен в папке public_html вашего сайта.
Ошибка может возникнуть в случае, если кто-то допустил ошибку при редактировании или настройке сайта. Также проблемы с индексным файлом случаются в результате переезда сайта с одного хостинга на другой.
Проверить файл .htaccess
Этот конфигурационный файл содержит команды для веб-сервера Apache, которые будут выполнять каждый раз в ходе обработки входящих запросов. Здесь настраиваются параметры переадресации, и здесь же регламентируется уровень доступа к определенным страницам.
Если в файле команды указаны с ошибкой, или если в файле прописаны конфликтующие команды, это может послужить причиной появления ошибки 403.
Самый простой и быстрый способ узнать, является ли файл .htaccess причиной ваших бед – переименовать его. В результате этого команды не будут действовать. И если ошибка исчезла, значит, дело именно в нем. Тогда уже следует внимательно изучить содержимое файла и выяснять, в чем именно проблема.
Проверить владельца папок
Если папка принадлежит пользователю, у которого в группе доверенных лиц нет веб-сервера, это может послужить причиной ошибки 403 Forbidden, так как в этом случае на веб-сервер распространяются права доступа прочих пользователей. А этого в большинстве случаев недостаточно.
Решение простое – назначить владельцем файлов и папок сам веб-сервер. Для этого просто подключитесь к серверу по SSH и используйте через консоль команду:
chown пользователь:группа /путь/к/файлу
Пользователь и группа здесь – это имя пользователя, под которым веб-сервер инициирует процессы.
Выключите плагины и расширения
Часто помогает сайтам, которые используют CMS, а это большинство. Бывает такое, что установленные модули и расширения содержат кривой код, который и провоцирует появление ошибок.
Просто отключите все плагины на сайте и посмотрите, сохраняется ли проблема. Если нет – проблема именно в одном из этих модулей для CMS. Поочередно их подключайте и смотрите, когда проблема снова даст о себе знать. Это поможет выявить проблемное расширение, которое придется полностью отключить или заменить каким-нибудь другим.
Заключение
Если ни один из описанных способов не помог решить проблему, попробуйте почистить кэш и cookies. Банально, но иногда это срабатывает. Чтобы получить персональную консультацию по любым вопросам, пишите нам в Livechat. Специалисты HostZealot помогут решить любой вопрос.