ホームページ > バックエンド開発 > PHPチュートリアル > 異なる URI からネストされたサブフォルダーを提供するように Nginx を構成するにはどうすればよいですか?

異なる URI からネストされたサブフォルダーを提供するように Nginx を構成するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-11-29 02:28:13
オリジナル
153 人が閲覧しました

How Can I Configure Nginx to Serve Nested Subfolders from Different URIs?

ネストされたサブフォルダーの 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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート