nginx "root /parent/child" 内部位置ディレクティブが機能せず、「404 見つかりません」と表示される

nginx

私はnginxを学んでおり、「nginx Essential-valery kholodkov」の本を参照してnginx 1.8を設定しており、centos 7を使用しています(selinuxはオフです)。

documentroot(例:apache 2.x)のデフォルト設定をいくつか変更し、以下のように場所/画像を追加しました。

server {
listen       80;
server_name  localhost;
#charset koi8-r;
#access_log  /var/log/nginx/log/host.access.log  main;

location / {
root /var/www/html/example.com;
index  index.html index.htm;
}
location /images {
root /disk2/images;
}

ブラウザで example.com/images/pen.jpg に移動すると、404 Not Found エラーが表示されます。しかし、私が使うときニックネーム動作し、pen.jpgが表示されます。以下は有効な構成です(位置セクション)。

location /images {
alias /disk2/images;
}

ベストアンサー1

ここで私の解決策を見つけました。nginxのマルチルートシャフィール・カリームが答えた。

これ場所開始されたすべての要求を転送するようにシステムに指示します。/変更なしお客様のデータは次の場所にあります。/var/www/静的 したがって、以下の設定が機能します!

location /images {
root /disk2;
}

おすすめ記事