Apache - это программное обеспечение веб-сервера, которое используется почти 67% всех веб-серверов в мире. Это программное обеспечение разрабатывается и распространяется Apache Software Distribution. Он имеет открытый исходный код и доступен бесплатно. Apache быстр, безопасен и надежен, что является одной из причин его популярности. Однако совсем недавно многие пользователи сталкивались с ошибкой « Запрещено - у вас нет разрешения на доступ / на этом сервере » при попытке настроить Apache для своего домена.
Что вызывает ошибку «Запрещено - у вас нет разрешения на доступ / на этом сервере»?
Получив многочисленные отчеты от нескольких пользователей, мы решили изучить проблему и разработали набор решений, чтобы полностью ее устранить. Также мы изучили причины, по которым он срабатывает, и перечислили их следующим образом.
- Неправильные настройки глобального каталога : возможно, что настройки глобального каталога не были настроены должным образом, что не позволяет использовать достаточно директив для сайта. Если на сайте нет правильной директивы, это может вызвать эту ошибку.
- Неверные разрешения : Apache требует разрешений до корневой папки каталога для правильной работы, если эти разрешения не предоставлены, может возникнуть ошибка.
- Нет имени пользователя : в «httpd.conf» в некоторых случаях необходимо ввести фактическое имя пользователя, чтобы избавиться от ошибки. Для некоторых это работает, а для некоторых - нет.
Теперь, когда у вас есть базовое представление о природе проблемы, мы перейдем к ее решениям. Обязательно реализуйте их в том порядке, в котором они представлены.
Решение 1. Изменение настроек глобального каталога
Для решения этой проблемы необходимо правильно настроить определенные параметры. Поэтому на этом этапе мы добавим директиву Options в настройки глобального каталога, которые находятся в файле « httpd . conf »или« httpd - vhosts . conf »в зависимости от пользователя. Для этого:
- Как только вы попадете в « httpd . conf »или « httpd-vhosts.conf », найдите настройки каталога , они должны быть похожи на приведенный ниже код.
Опции FollowSymLinks AllowOverride All Order deny, allow Allow from all
Примечание. Возможно, в коде указано « Запретить от всех » вместо « Разрешить от всех ». Важно изменить его на « Разрешить от всех » или « Требовать все разрешено », как указано ниже.
- Убедитесь, что вы добавили к нему строку « Options Indexes FollowSymLinks Includes ExecCGI » таким образом, чтобы она выглядела как следующий код.
#Options FollowSymLinks Параметры индексов FollowSymLinks Включает ExecCGI AllowOverride All Order deny, allow Разрешить от всех
- Проверьте, сохраняется ли проблема.
- Если проблема не решена, измените код, удалив « Разрешить от всех » на « Требовать все разрешено ».
- Проверьте, сохраняется ли проблема
Решение 2: изменение разрешений
Когда пользователь связывает Apache со своим доменом, он предоставляет программному обеспечению разрешения на чтение и запись файлов. Важно, чтобы эти разрешения были предоставлены правильно. Ниже мы укажем правильный способ предоставления разрешений.
- Обычно пользователи предоставляют разрешения следующим образом.
chgrp -R www-data / username / home / Dropbox / myamazingsite / chmod -R 2750 / username / home / Dropbox / myamazingsite /
- Эти команды неверны и должны быть заменены на
chgrp -R www-data / имя пользователя chmod -R 2750 / имя пользователя
- Также имейте в виду, что вы используете правильный уровень « chmod », используйте тот, который предоставляет права на чтение пользователям, например, « chmod 755 ».
- Проверьте, сохраняется ли проблема, попробовав предложенные варианты.
Решение 3. Добавление имени пользователя
В папке « httpd . conf », не забудьте указать свое точное имя пользователя вместо слов « Пользователь » или « Группа ». В некоторых случаях добавление имени пользователя решает проблему.