403 forbidden linux server

Решение проблем, связанных с ошибкой NGINX «403 Forbidden»

« 403 Forbidden » — наиболее распространенная ошибка при работе с NGINX . В этой статье мы расскажем о причинах возникновения 403 forbidden NGINX , а также о том, как найти ее причину и исправить основную проблему.

Об ошибке

« 403 Forbidden » — это универсальная ошибка NGINX , которая указывает на то, что вы запросили что-то, а NGINX ( по ряду причин ) не может это предоставить. « 403 » является кодом состояния HTTP , который означает, что веб-сервер получил и понял ваш запрос, но не может предпринять никаких дальнейших действий.

Поиск файла конфигурации NGINX

По умолчанию файлы конфигурации NGINX находятся в папке /etc/nginx . Если вы просмотрите этот каталог, то найдете несколько конфигурационных файлов для различных модулей сервера.

Главный файл конфигурации — /etc/nginx/nginx.conf . Он содержит основные директивы для NGINX и является аналогом файла httpd.conf для Apache .

Чтобы отредактировать этот файл, используйте команду:

Некорректный индексный файл

Одна из наиболее распространенных причин ошибки 403 forbidden NGINX — некорректная настройка индексного файла.
nginx.conf указывает, какие индексные файлы должны загружаться, и в каком порядке. Например, приведенная ниже строка указывает NGINX искать index.html , затем index.htm , затем index.php :

Если ни один из этих трех файлов не будет найден в каталоге, NGINX вернет ошибку « 403 Forbidden ».

Примечание . Имена файлов чувствительны к регистру. Если nginx.conf указывает index.html , а файл называется Index.html , это приведет к ошибке « 403 Forbidden ».

Если вы хотите использовать имя индексного файла, которое ваш веб-сервер NGINX не распознает, отредактируйте nginx.conf и добавьте имя файла в строку конфигурации индекса.

Например, чтобы добавить index.py в список распознаваемых индексных файлов, отредактируйте эту строку следующим образом:

Сохраните изменения, а затем перезапустите NGINX командой:

Автоиндекс

Альтернативным решением является разрешение индекса директории. Индекс директории означает, что если индексный файл не найден, сервер отобразит все содержимое директории.

По соображениям безопасности индекс директории в NGINX по умолчанию отключен.

При « 403 forbidden NGINX », если вы хотите показать индекс директории в ситуациях, когда NGINX не может найти ( идентифицировать ) файл, отредактируйте nginx.conf , как описано выше, и добавьте в него две следующие директивы:

Эти директивы должны быть добавлены в блок location . Можно либо добавить их в существующий блок location/ , либо добавить новый. Окончательный результат должен выглядеть так:

Также можно активировать индексирование директории в определенной папке, если не хотите, чтобы она была доступна для всего сайта:

Сохраните изменения в файле, затем перезапустите NGINX командой:

Права доступа к файлам

Некорректные права доступа к файлам являются еще одной причиной ошибки « 403 Forbidden NGINX ». Для использования с NGINX рекомендуется стандартная настройка: для каталогов — 755 и для файлов — 644 . Пользователь NGINX также должен быть владельцем файлов.

Читайте также:  Samsung dp300a2a драйвера windows 10

Идентификация пользователя NGINX

Для начала нужно определить, от имени какого пользователя запущен NGINX . Для этого используйте команду:

В этом примере рабочий процесс NGINX работает от имени пользователя nginx .

Установите права собственности на файл

Перейдите на уровень выше корневой директории документа сайта. Например, если корневая директория вашего сайта /usr/share/nginx/example.com , перейдите в /usr/share/nginx с помощью команды:

Измените права собственности на все файлы в директориях нижних уровней на пользователя nginx с помощью команды:

Установите права доступа

403 forbidden NGINX — как исправить: установите права доступа для каждой директории на 755 с помощью команды:

Например, чтобы установить права доступа для директории example.com , используется команда:

Затем перейдите в корневой каталог веб-документа:

Измените права доступа для всех файлов в этой директории с помощью команды:

Дайте знать, что вы думаете по данной теме материала в комментариях. За комментарии, лайки, дизлайки, отклики, подписки огромное вам спасибо!

Источник

ИТ База знаний

Курс по Asterisk

Полезно

— Узнать IP — адрес компьютера в интернете

— Онлайн генератор устойчивых паролей

— Онлайн калькулятор подсетей

— Калькулятор инсталляции IP — АТС Asterisk

— Руководство администратора FreePBX на русском языке

— Руководство администратора Cisco UCM/CME на русском языке

— Руководство администратора по Linux/Unix

Серверные решения

Телефония

FreePBX и Asterisk

Настройка программных телефонов

Корпоративные сети

Протоколы и стандарты

Исправляем 403 Forbidden в Apache на CentOS

2 минуты чтения

Маленькая, но полезная заметка. Однажда, в один прекрасный день у нас перестала работать подмапленная в web — доступ директория (смонтирована она была через /etc/fstab ). Браузер возвращал 403 Forbidden Error. Не долго думая, смотрим, что происходит в логах при обращении к web. В режиме реального времени можно посмотреть командой:

Онлайн курс по Linux

Мы собрали концентрат самых востребованных знаний, которые позволят тебе начать карьеру администратора Linux, расширить текущие знания и сделать уверенный шаг к DevOps

Итак, у нас там было следующее:

Хм. Дело в том, что у нас там просто выводится список папок, по файлам. Следовательно, сервак просто не может отрисовать эту структуру. Погнали исправлять

Воркэраунд

Лезем в конфигурационный файл нашего Apache:

И в общей области, где идут настройки директорий добавляем следующее:

Где merion_directory — ваша директория в корне веб — сервера /var/www/html/, при обращении к которой вы получаете 403. Конфигурация проста — мы просто говорим апачу, что у нас там каталог файлов и его нужно «отрисовать» даже несмотря на то, что у нас там нет никаких index.html или index.php. По окончанию настройки ребуетаем Apache:

Или через systemctl. Ребутаем браузер (Ctrl + F5). Профит!

Мини — курс по виртуализации

Знакомство с VMware vSphere 7 и технологией виртуализации в авторском мини — курсе от Михаила Якобсена

Источник

Apache 2.4.10 выдает 403 ошибку

локальные сайты стали отдавать 403 ошибку. Логи apache:

И чем это поможет?

Покажи сам VirtualHost

Права доступа какие на /var/www/sitename.local и на файл /var/www/sitename.local/index.php?

Емнип если права слетели, то будет просто permission denied, не? Давно апач не видел. Ну и тогда уж заодно и на /var/www/ проверить надо.

Читайте также:  Графический планшет драйвера для windows 10

Ну так ошибка 403 и есть «permission denied».

Как он тебе его покажет, если в убунте каталог не httpd а apache2 .

Здесь «client denied by server configuration», и вот я не уверен, что это про права доступа к файлам.

Ну если «работало и вдруг само перестало», то хотя бы .htaccess’ы перепроверь.

Как он тебе его покажет, если в убунте каталог не httpd а apache2.

подправит и покажет

VirtualHost

ServerAdmin webmaster@localhost DocumentRoot /var/www/sitename.local/

ErrorLog $/error.log CustomLog $/access.log combined

Нет такого файла или каталога

chmod

Нету ничего. просто выполняется и все

Да с правами все норм. Непонятно из-за чего

.htaccess’ы проверял. и убирать побывал

Кстати, по ссылки http://localhost/phpmyadmin/ заходит нормально

такое чувство, что тебе тут платная тех поддержка

а добродетели тредом выше потакают

конфиг апача залей куда-то

Конфиг апача

Тогда посмотри в чём разница между /etc/phpmyadmin/apache.conf который ты подключаешь для phpmyadmin и твоими настройками.

Ну, или покажи его нам.

Блин, а у тебя DocumentRoot в твоём VirtualHost слешем чтоли заканчивается?

The DocumentRoot should be specified without a trailing slash.

Источник

Site shows 403 Forbidden error via HTTPS

Applicable to:

  • Plesk Onyx for Linux
  • Plesk for Linux

Symptoms

  1. The site fails to open with 403 Forbidden error via HTTPS (or 404 Not Found);
  2. There are the following records in /var/www/vhosts/example.com/logs/error_log file:

CONFIG_TEXT: (13)Permission denied: /var/www/vhosts/example.com/httpsdocs/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable, referer: https://www.example.com

CONFIG_TEXT: AH01276: Cannot serve directory /var/www/vhosts/example.com/httpsdocs/: No matching DirectoryIndex (index.php) found, and server-generated directory index forbidden by Options directive

The domain example.com displays different data when accessing using HTTP and HTTPS;

The domain shows the default Apache welcome page or website shows Plesk default page;

Path of Document Root for a domain changes on each reconfiguration from /httpdocs to /httpsdocs: the «root» statement in the file /var/www/vhosts/system/example.com/conf/nginx.conf points to /httpsdocs instead of /httpdocs

Document Root is set to /httpdocs in Plesk > Domains > example.com > Hosting Settings > Document Root;

Plesk was upgraded from the older version where the Document root was changed from split location (http in /httpdocs and https in /httpsdocs) using Separate SSL/TLS and non-SSL/TLS content option.

Cause

Enabled compatibility mode for the legacy option «Separate SSL/TLS and non-SSL/TLS content«

Источник

Ошибка 403 forbidden nginx 1.4 6 Ubuntu

Ошибка 403 forbidden nginx означает что вы запросили ресурс у сервера, который он не может отправить, потому что у вас недостаточно прав для его просмотра. Фактически, это даже не ошибка, это сообщение HTTP 4xx, которое всего лишь сообщает, что у вас нет доступа к определенному контенту.

Достаточно часто такие сообщения показывается пользователям, потому что они были заблокированы на сайте или попытались получить доступ к файлу, который доступен только локально. В этой статье мы попытаемся разобраться со случаями, когда появление 403 forbidden nginx 1.4 6 Ubuntu не желательно и представляет из себя ошибку, которую веб-мастер или системный администратор должен решить. Но сначала рассмотрим основные причины почему вы можете видеть это сообщение.

Читайте также:  Отключить пин код windows 10 pro

Ошибка 403 Forbidden Nginx

Итак, ошибка 403 forbidden nginx 1.4 6 Ubuntu может возникать в таких случаях:

  • Пользователь заблокирован на сервере с помощью директивы deny в конфигурации nginx;
  • Доступ к данному ресурсу разрешен только с определенного IP адреса;
  • Пользователь пытается получить доступ к папке, отображение содержимого которой запрещено;
  • Nginx не может прочитать содержимое запрашиваемого файла в файловой системе;
  • Файл index не найден в каталоге.

Это основные причины, которые встречаются наиболее часто. Как видите, две последние из них представляют из себя проблему. Рассмотрим как ее решить.

Неверно выставлены права

Если права на файл, который пытается получить пользователь выставлены неправильно, то будет выдана такая ошибка. Необходимо, чтобы у Nginx были права не только на чтение этого файла, но и на чтение все родительских каталогов. Это можно проверить командой:

namei -l /var/www/public_html/index.html

Для всех элементов пути должен быть установлен флаг «r», чаще всего лучше подходят права 644, то есть, владелец может все, а группа и остальные только читать. Если права не соответствуют, то вы нашли проблему и осталось только исправить права с помощью chmod. Например:

chmod 644 /var/www/public_html/index.html

Вот так должно быть:

Также обратите внимание на владельца файлов и папок. Если nginx должен иметь возможность выполнять туда запись, то, возможно есть смысл сделать владельцем пользователя nginx или позже получите другую ошибку. Также, если с правами все хорошо, но ошибка не решена попробуйте отключить SELinux, возможно, эта служба мешает Nginx получить доступ к файлам.

Если вы используете PHP и получаете такую ошибку, то еще нужно проверить может ли Nginx получить доступ к сокету обработчика PHP. Желательно, чтобы php-fpm запускался с той же группой, что и nginx, потому что права, по умолчанию, для доступа к сокету 660 (для группы и для владельца). Поэтому проверьте поля listen.owner и listen.group в файле /etc/php5/fpm/php-fpm.conf.

Также можно попытаться использовать сетевой сокет и подключаться к порту, а не файлу.

Неверно настроен index

Файл index открывается по умолчанию при запросе папки на сервере, в которой он находится. Если такого файла в папке нет или он настроен неправильно в конфигурационном файле nginx, то программа попытается отобразить содержимое папки, а это по умолчанию запрещено, поэтому вы получите 403 Foribden.

Чтобы решить проблему убедитесь, что файл index.html, index.php или как он у вас называется, находится в нужно папке, в той, которую вы запрашиваете. Проверьте конфигурационный файл и убедитесь, что в нем указана директива Index с правильным именем и расширением файла:

Если в директиве указаны только файлы html, а вы используете php, то уже понятно почему программа не может найти то, что нужно. Просто добавьте имя файла в директиву:

index index.html index.htm index.php;

Точно так же, если вы использовали python скрипт, то нужно добавить его расширение.

Выводы

В этой статье мы рассмотрели почему возникает ошибка 403 forbidden nginx 1.4 6 Ubuntu и пути ее решения. Это наиболее частые причины, с которыми сталкиваются пользователи и попробовав все это, скорее всего, вы решите свою проблему. Если у вас остались вопросы, спрашивайте в комментариях!

Источник

Оцените статью