chroot jail 内の Nginx、利用可能なサーバーへのシンボリックリンクが機能しない

chroot jail 内の Nginx、利用可能なサーバーへのシンボリックリンクが機能しない

私は (Arch Linux) の chroot jail 内に Nginx をセットアップしました。有効なサーバーが含まれるように/srv/http変更しました:nginx.conf

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

そして、 のファイルservers-enabledを にシンボリックリンクしましたservers-available。 はデフォルトではオフになっていますが、に をdisable_symlinks追加して本当にオフになっていることを確認しました。ただし、nginx をリロードした後、Web サイトにアクセスできません。disable_symlinks off;nginx.conf

私は見てきましたこの質問絶対パスを使用していることを確認しました。ただし、パスは (部分的に) chroot jail の外部にあるため、nginx がパスにアクセスできるかどうかはわかりません。

そこで私は次のことを試しました:

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

そのため、今は相対パスを使用していますが、少なくとも chroot jail 内では使用しています。残念ながら、この設定でも Web サイトにアクセスできません。

助言がありますか?

答え1

したがって、相対パスは chroot 内のシンボリックリンクで機能するようです。

私が使用したコードは次のとおりです

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

関連情報