ネストされたサブフォルダーの Nginx ロケーション構成
Nginx 構成のコンテキストでは、特定の URI を持つサブフォルダーにアクセスするのは困難な場合があります。ここで、場所のディレクティブが登場します。
次のシナリオを考えてみましょう。2 つのサブフォルダー /static と /manage を含む /var/www/mysite/ のようなディレクトリ構造があるとします。ルート URI (例: "http://example.org/") を介して /static にアクセスし、"/manage" (例: "http://example.org/manage") を介して /manage にアクセスしたいとします。
提供された Nginx 構成を詳しく見てみましょう:
server { listen 80; server_name example.org; ... # Static folder location location / { root $uri/static/; index index.html; } # Manage folder location (attempt 1) location /manage { root $uri/manage/public; try_files $uri /index.php$is_args$args; } # PHP processing location location ~ \.php { ... } }
/ の場所は正しく機能しますが、/manage の場所は失敗します。これは、ルート ディレクティブが間違っているためです。エイリアス内のサブフォルダーを使用するには、ルートの代わりにエイリアスを使用する必要があります。
/manage の更新された場所は次のようになります:
location ^~ /manage { alias /var/www/mysite/manage/public; ... }
これらの変更により、Nginx は正しくサービスを提供します。ルート URI の /static からの静的ファイルと、「/manage」の /manage からの動的コンテンツ。
以上が異なる URI からネストされたサブフォルダーを提供するように Nginx を構成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。