0

サーバーブロックでルートが指定されたnginx構成があります。このようなページ ( https://www.nginx.com/resources/wiki/start/topics/tutorials/config_pitfalls/ ) によると、場所/ブロックに同じルートを配置する必要もなく、それで十分なはずです。しかし、場所/ブロックにルート ディレクティブを配置しない限り、404 エラーが発生します。これが私のサーバーブロックです:

server {
    listen          80;
    server_name     mysite.com

    root /usr/local/nginx/sites/mysite;
    index index.php index.html;

    location / {
        root /usr/local/nginx/sites/mysite;
        index  index.php index.html index.htm;
    }

    location ~ \.php$ {
      fastcgi_split_path_info ^(.+\.php)(/.+)$;
      fastcgi_pass unix:/var/run/php5-fpm.sock;
      fastcgi_index index.php;
      include fastcgi.conf;
    }

    error_page   500 502 503 504  /50x.html;
}

したがって、" root /usr/local/nginx/sites/mysite;" が 内にある場合location /、すべてが機能します。しかし、そうでない場合は、サーバー ブロック内の同じルート ディレクティブが無視されるだけです。ここで何が欠けていますか?

4

1 に答える 1