Я установил nginx на Ubuntu 12.04. Однако nginx, похоже, не следит за символическими ссылками. Я понимаю, что для этого требуется изменение конфигурации, но я не могу найти, где внести изменения. Любая помощь была оценена.
Nginx не соответствует символическим ссылкам
Ответ 1
посмотрите следующий вариант конфигурации: http://nginx.org/en/docs/http/ngx_http_core_module.html#disable_symlinks
Ответ 2
В моем случае nginx
уже настроен на следование символическим ссылкам. Но символическая ссылка указывала на мой домашний каталог, а nginx
не имел права доступа к моим файлам.
В этом примере символическая ссылка: /usr/share/nginx/www/mylink
→ /home/myuser/html
cd /usr/share/nginx/www
mkdir -p /home/myuser/html
sudo ln -sv /home/myuser/html mylink
«mylink» -> «/home/u/html»
Дайте разрешения для чтения (r
) и поиска (X
), используя chmod
следующим образом:
chmod +rX /home/myuser
chmod +rX -R /home/myuser/html
Разрешение записи также может быть предоставлено, если скрипты требуют записи данных:
chmod +w -R /home/myuser/html/myPHP
Не нужно перезапускать ngnix
, просто нажмите [CTRL+F5]
в своем браузере.
Предостережение: Не рекомендуется создавать символические ссылки, указывающие на ваше домашнее пространство, потому что ошибка при доступе к чтению/записи или других символических ссылках может привести к появлению отверстий в ваших цифровых данных!
Ссылка: Arch wiki
Ответ 3
если ответ olibre не помог отредактировать файл /etc/nginx/sites -available/default и добавить эту строку, где вы указали свой корневой каталог сервера.
autoindex on;
сохранить файл и перезагрузить сервер
/etc/init.d/nginx restart