Я установил Nginx внутри chroot-тюрьмы в /srv/http (Arch Linux). Я изменил свой nginx.conf чтобы он включал мои включенные серверы:

include /etc/nginx/servers-enabled/*;

И я сделал ссылку на файлы в servers-enabled servers-available . Хотя disable_symlinks отключено по умолчанию, я позаботился о том, чтобы оно действительно отключилось, добавив disable_symlinks off; в nginx.conf . Однако после перезагрузки nginx я не могу зайти на сайт.

Я посмотрел на этот вопрос и убедился, что использовал абсолютные пути. Однако я не уверен, может ли nginx получить доступ к пути, потому что он (частично) находится за пределами chroot-тюрьмы.

Поэтому я попробовал следующее:

cd /srv/http
ln -s etc/nginx/servers-available/example etc/nginx/servers-enabled/example

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

Какие-либо предложения?

1 ответ1

1

Таким образом, относительные пути работают с символьной ссылкой внутри chroot.

Вот код, который я использовал

cd /srv/http/etc/nginx/servers-enabled
ln -s ../servers-available/example example

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .