Проблема
Сервер с NGINX имеет каталог с файлами, которые он должен обслуживать по HTTP.
Каталог находится по адресу (пример): / media / user / data
Вопрос
Какая конфигурация требуется в NGINX для обслуживания этого каталога (и всех его файлов и подпапок) через HTTP?
Обслуживаемый каталог через HTTP должен быть полностью доступен, и любые пользователи должны иметь возможность просматривать все содержимое каталога.
Требуются все шаги для настройки.
Исследовательская работа
Исследование по теме обнаруженных изменений потребуется в файле по умолчанию в sites-available
каталог внутри /etc/nginx
папка как таковая:
location /data {
root /media/user/;
autoindex on;
}
}
Другой
Из недавних комментариев к предлагаемым ответам:
Файл по умолчанию в sites-available был отредактирован, чтобы включить каталог, затем сервер был перезапущен и проверен на работоспособность, посетив 127.0.0.1, который отображал стандартную страницу поздравлений nginx. Затем при попытке доступа http://127.0.0.1/data сервер выдал ошибку 403 Forbidden. - Экономный Расин
Вы можете добиться этого, отредактировав существующий виртуальный хост Nginx (тот, который вы упомянули по умолчанию). Просто убедитесь, что каталог / media / user / data и все содержимое внутри этого каталога доступны для чтения пользователю в запущенной службе Nginx (скорее всего, пользователю "nginx").
Если вы хотите разместить эти файлы в другом (под) домене, вы можете создать новый виртуальный хост Nginx с таким содержимым, как:
server {
listen *:80;
server_name example.com www.example.com;
root /media/user/data;
autoindex on;
}
Обновить: из комментариев ниже, также было необходимо изменить права доступа к каталогу, чтобы Nginx мог обслуживать контент, а не возвращать 403 forbiden
ошибка.
Хотя разрешения /media/user/data/
каталог были хорошими, /media/
и /media/user/
в каталогах отсутствовали разрешения для исполняемых файлов. Проблема была решена следующей командой:
sudo chmod o+x /media/ /media/user/