SharePoint Server でのホスト名付きサイト コレクションのアーキテクチャと展開

適用対象:yes-img-13 2013yes-img-162016 yes-img-192019 yes-img-seSubscription Edition no-img-sopSharePoint in Microsoft 365

ホスト名付きサイト コレクションは、SharePoint Server にサイトを展開するためのオプションの方法です。 各サイト コレクションに独自の DNS 名を持つ複数のサイト コレクションを使用するユーザーは、ホスト名付きサイト コレクションの展開を選択できます。 それ以外の場合、ユーザーはパス ベースのサイト コレクションを展開する必要があります。

ここでは、ホスト名付きサイト コレクションを計画して実装する方法、URL を設計する方法、および URL を管理する方法について説明します。

ホスト名付きサイト コレクションのアーキテクチャと設計

ホスト名付きサイト コレクションを使用すると、一意の DNS 名をサイト コレクションに割り当てることができます。 たとえば、http://TeamA.contoso.comhttp://TeamB.contoso.com のようなアドレスを設定できます。 この例では、一意の DNS 名を持つ多数のサイトを同じ Web アプリケーションに展開することを示しています。 また、多数の顧客用に環境を拡大できます。

この記事では、SharePoint Server で推奨される構成にホスト名付きサイト コレクションを実装する方法を説明します。 高度な構成に関する情報は、この記事の最後「ホスト名付きサイト コレクションで複数の Web アプリケーションを使用する」に記載されています。

ホスト名付きサイト コレクションを展開するための推奨構成は、次の図に示すように、すべてのホスト名付きサイト コレクションを 1 つの Web アプリケーション内に配置することです。

ホスト名付きサイト コレクションの推奨構成

Diagram that shows recommended configuration for host-named site collections

図で示されているこの推奨構成には、次の要素が含まれます。

  • サイト コレクション用の 1 つのアプリケーション プール。

  • 1 つのアプリケーション プール内でホストされているサイト コレクション用の 1 つの Web アプリケーション。

  • ルート サイト コレクション (http://webapp.contoso.com)。

  • サイト例でコンテンツをホストするための複数のホスト名付きサイト コレクション:

    • HR、Facilities、および Purchasing のサブサイトを含む公開されたイントラネット コンテンツ (http://intranet.contoso.com)。

    • チーム 1、チーム 2、およびチーム 3 のサブサイトを含むチーム サイト (http://teams.contoso.com)。

    • 次の形式のサイト URL を持つ個人用サイト: http://my.contoso.com/personal/<site_name>

この例では、Web アプリケーション内のサイトの数とサイトの URL は重要ではありません。

ホスト名付きサイト コレクション用の Web アプリケーションを作成する場合、Web アプリケーションとルート サイト コレクションの URL は になります http://<_webapp.contoso.com_>/

Web アプリとルート サイト コレクションの URL。

このアーキテクチャは、Microsoft 365 環境で使用されるのと同じアーキテクチャであるため、ホスト名付きサイト コレクションを展開することをお勧めします。 そのため、この構成は最もテストが厳しい構成です。 アプリ モデルや要求管理などの新機能は、この構成用に最適化されており、今後最も信頼性の高い構成です。

推奨される構成には、次の要素は含まれません。

  • 複数の領域を持つ環境でのアプリケーションの有効化。

  • ホスト名付きサイト コレクションとパスベースのサイト コレクションの併用 (ルート サイト コレクション以外)。

  • ホスト名付きサイト コレクションを使用する複数の Web アプリケーション。

ホスト名付きサイト コレクションとパスベースのサイト コレクション

ホスト名付きサイト コレクションを使用すると、Web アプリケーション内の各サイト コレクションに固有の DNS 名が割り当てられます。 1 つの Web アプリケーションに多数のホスト名付きサイト コレクションを展開する場合、リソースは複数のアプリケーション プールと Web アプリケーションをサポートするために使用されないため、ファームのスケーラビリティが向上します。

SharePoint Server は、ホスト名付きサイト コレクションととパスベースのサイト コレクションの両方をサポートします。 次の表では 2 つのオプションの違いを詳しく説明し、ホスト名付きサイト コレクションについての詳細な情報を示します。

表: ホスト名付きサイト コレクションとパスベースのサイト コレクションの比較

  ホスト名付きサイト コレクション パスベースのサイト コレクション
サイトの作成 ホスト名付きサイト コレクションは、Microsoft PowerShell を使用して作成できます。 サーバーの全体管理を使用してホスト名付きサイト コレクションを作成することはできません。 パスベースのサイト コレクションは、サーバーの全体管理 または PowerShell を使用して作成できます。
URL Web アプリケーション内の各ホスト名付きサイト コレクションには、固有の DNS 名が割り当てられます。
領域を使用して、バニティ URL を含む最大 5 つの URL をホスト名付きサイトに割り当てることができます。
Web アプリケーション内のすべてのパスベースのサイト コレクションは、Web アプリケーションと同じホスト名 (DNS 名) を共有します。 Web アプリケーションを拡張して、最大 5 つの領域を実装し、各領域に異なるホスト名を作成できます。 ただし、領域のホスト名は、Web アプリケーション内のすべてのサイト コレクションに適用されます。
ルート サイト コレクションと検索 ルート サイト コレクションは、Web アプリケーション内のクロール コンテンツを作成するために必要です。 ルート サイト コレクションには、ユーザーがアクセスできないサイト コレクションを指定できます。 通常、1 つのパスベースのサイト コレクションが、Web アプリケーション内のルート サイト コレクションになります。 管理パスを使用して、Web アプリケーション内にさらに多くのサイト コレクションを作成できます。
URL マッピング PowerShell コマンドを使用して URL (Set-SPSiteUrl、、Remove-SPSiteUrlGet-SPSiteUrl) を管理します。 URL を管理するには、代替アクセス マッピングを使用します。
セルフサービス サイトの作成 ホスト名付きサイト コレクションでのセルフサービス サイトの作成には、カスタム ソリューションを使用する必要があります。
SharePoint Server の既定のインストールの一部であるセルフサービス サイト作成機能は、ホスト名付きサイト コレクションでは機能しません。
SharePoint Server の既定のインストールに含まれるセルフサービス サイト作成機能を使用するときは、パスベースのサイトを作成します。
管理パス ホスト名付きサイト コレクションの管理パスは、ファーム レベルで適用され、すべての Web アプリケーションに使用できます。
ホスト名付きサイト コレクションの管理パスを作成するには、PowerShell を使用する必要があります。
パスベースのサイトの管理パスは、Web アプリケーション レベルで適用されます。
パスベースのサイト コレクションの管理パスは、サーバーの全体管理 または Microsoft PowerShell を使用して作成できます。

ホスト名付きサイト コレクションの URL の設計と管理

以下の PowerShell コマンドレットを使用すると、ホスト名付きサイト コレクションの URL マッピングを管理でき、URL を 1 つのサイト コレクションにマップできます。

  • Set-SPSiteUrl — サイトの URL マッピングを追加または変更します。

  • Remove-SPSiteUrl — サイトから URL マッピングを削除します。

  • Get-SPSiteUrl— サイト コレクションのすべての URL と関連ゾーンを参照してください。

これらのコマンドレットは、代替アクセス マッピングと似た URL マッピング機能をホスト名付きサイト コレクションに対して提供します。

領域とホスト名付きサイト コレクション

ホスト名付きサイト コレクションはあらゆる領域から使用できます。 ホスト名付きサイト コレクションは、既定のゾーンに限定されません。 必要に応じて、複数の領域を実装し、領域とホスト名付きサイト コレクションを使用して、さまざまな認証設定やポリシーを構成できます。

注:

異なるゾーンを使用するには、既存の Web アプリケーションを新しいゾーンに拡張する必要があります。

領域ごとに 1 つの URL を割り当てることによって、最大で 5 つの URL を 1 つのサイト コレクションに割り当てることができます。 ただ 1 つの領域を実装して推奨アーキテクチャに従う場合でも、最大で 5 つの URL をホスト名付きサイト コレクションに割り当てることができます。 このプロビジョニングは、Web アプリケーションを拡張してゾーンが実装されていない場合、SharePoint Server は既定のゾーンを使用するためです。

たとえば、以下の URL で同じインターネット サイトにアクセスできます。

検索クロール アカウントが統合 Windows 認証 (NTLM または Kerberos) を使用して、既定のゾーンを通じてコンテンツにアクセスする必要があります。 要求認証では 1 つのゾーンで複数の種類の認証が許可されるため、この要件は他の認証要件に影響を与えるべきではありません。

管理パスとホスト名付きサイト コレクション

同じサイト コレクションに対して構成されている URL は、異なるスキームとドメインを持つ場合がありますが、同じマネージド パスを持っている必要があります。つまり、ドメインに続く '/' の後の URL はすべて同じである必要があります。 たとえば、 http://www.Contoso.com/sites/Site1http://www.Fabrikam.com/sites/Site1 はどちらも同じサイト コレクションを指すことができますが http://www.Contoso.com/sites/Site1http://www.bar.com/sites/Project1 指すことはできません。

URL を管理するコマンドレットは、ホスト名に対するルート サイト コレクション (例: http://www.Contoso.com 上に限り動作します。 これらのコマンドレットは、 などの http://www.Contoso.com/sites/Project1ルートの下にあるマネージド パス サイト コレクションでは動作しません。 ホスト名付きサイト コレクションのルートの下にあるサイトは、ルートのホスト名付きサイト コレクションの URL 設定を継承します。

ホスト名付きサイト コレクションの SSL のオフボックス ターミネーション

SSL のオフボックス ターミネーションは、プロキシ サーバーが SSL 要求を終了し、その後 HTTP を使用してその要求を Web サーバーに転送した場合に発生します。 ホスト名付きサイト コレクションでオフボックス SSL ターミネーションを実現するには、リバース プロキシ サーバーなどの SSL 接続を終了するデバイスでカスタム HTTP ヘッダー Front-End-Https: On を生成できる必要があります。 詳細については、「 オフボックス SSL 終了でホスト名付きサイト コレクションを使用する」を参照してください。

SSL のオフボックス終了はサポートされていますが、プロキシ サーバーから Web サーバーに暗号化されていないトラフィックが送信されるため、推奨されません。

ホスト名付きサイト コレクションに使用されるプロトコルは、コマンドレットを使用 Set-SPSiteUrl して URL を特定のゾーン (http または https) にマップするときに指定した URL パラメーターの値によって異なります。 Web アプリケーション、SSL 証明書、リバース プロキシ構成、その他のすべての必要な構成の IIS バインドが完全であることを確認してください。

パスベースのサイト コレクションを使用する場合

次のいずれかの条件が適用される場合は、従来のパス ベースのサイト コレクションと代替アクセス マッピングを使用します。

  • SharePoint Server の既定のインストールに含まれるセルフサービス サイト作成機能を使用する必要がある場合。

    この条件は、カスタム セルフサービス サイト作成ソリューションには適用されません。

  • SSL 終了が必要ですが、必要なカスタム HTTP ヘッダーを生成するように SSL 終了デバイスを構成することはできません。

    SSL 終了が要件でない場合でも、これらのデバイスでホスト名付きサイト コレクションで SSL ブリッジングを使用できます。

  • これらのグループが提供する追加のセキュリティのために、異なるアプリケーション プールを使用する予定か、複数のプロキシ グループを使用する必要があります。

    これらの場合は、ホスト名付きサイト コレクションを使用できます。 ただし、ホスト名付きサイト コレクションの URL を複数の Web アプリケーションにマップするために必要な追加構成は、ホスト名付きサイト コレクションを使用する利点を大幅に上回ります。 詳細については、「ホスト名付きサイト コレクションで複数の Web アプリケーションを使用する」をご覧ください。 パスベースのサイト コレクションの作成に関する詳細については、「SharePoint Server でサイト コレクションを作成する」をご覧ください。

ホスト ヘッダーとホスト名付きサイト コレクションを使用する

ホスト ヘッダーを使用すると、Web サーバーは同じ IP アドレスとポートの組み合わせで複数の Web サイトをホストできます。 受信 HTTP 要求にホスト ヘッダー名が含まれており、一致するホスト ヘッダーが IIS で構成されている場合、IIS は適切な Web サイトのコンテンツで応答します。

ホスト ヘッダーは、Web アプリケーション (IIS Web サイト) レベルで構成され、Web サイト のバインド プロパティの 1 つです。

IIS のホスト ヘッダーとホスト名付きサイト コレクションの違いを理解することが重要です。 IIS Web サイト レベルのホスト ヘッダーは、パス ベースのサイト コレクションのみを対象としています。

ホスト名付きサイト コレクションを使用する場合、SharePoint は、IIS 経由で渡される受信要求に基づいて、アドレスの正しいサイトを解決する役割を担います。 ほとんどの場合、IIS Web サイト レベルでホスト ヘッダー バインドを適用すると、IIS Web サイトを介してホスト名付きサイト コレクションにアクセスできなくなります。 このアクセス不能は、IIS がホスト ヘッダー バインドとは異なるホスト名の要求に応答しないためです。

IIS ではワイルドカード ホスト ヘッダー バインドを使用できますが、Web アプリケーション内のすべてのサイト コレクションがワイルドカード ホスト ヘッダー パターンに準拠していることを確認する必要があります。

重要

既存の Web アプリケーションにホスト ヘッダー バインド セットがある場合、IIS からバインドを削除するまで、IIS はホスト名付きサイト コレクションからページを返しません。 詳細については、「SharePoint Server の Web アプリケーションの URL と IIS のバインドを更新する」を参照してください。

同じ Web アプリケーションでのホスト名付きサイト コレクションとパスベースのサイト コレクションの併用

ホスト名とパス ベースのサイト コレクションは、同じ Web アプリケーションで使用できます。 両方の種類のサイト コレクションにユーザーがアクセスできるようにするには、Web アプリケーションから拡張されたゾーンの IIS Web サイトなど、Web アプリケーションの IIS Web サイトにホスト ヘッダー バインドを配置しないでください。 既存の Web アプリケーションにホスト ヘッダー バインド セットがある場合、IIS からバインドを削除するまで、IIS はホスト名付きサイト コレクションからページを返しません。

個人用サイト

両方の種類のサイト コレクションを個人用サイトで使用するときは、独自のプロビジョニング処理を実装し、パスベースのサイトではなくホスト名付きサイトとして個人用サイトを作成することを検討してください。

ホスト名付きサイト コレクションの展開と構成

ホスト名付きサイト コレクション用の Web アプリケーションを作成する

同じサーバーで同じポート番号を共有する 2 つ以上の IIS Web サイトを構成しない場合は、既定のゾーンに Web アプリケーションを作成します。 IIS Web サイト レベルでホスト ヘッダー バインドを適用しないでください。

ホスト名付きサイト コレクション用の Web アプリケーションを作成するには

  1. 次のメンバーシップがあることを確認します。

    • SQL Server インスタンスの securityadmin 固定サーバー ロール。

    • 更新するすべてのデータベースの db_owner 固定データベース ロール。

    • Microsoft PowerShell コマンドレットを実行しているサーバー上の Administrators グループ。

    管理者は、 コマンドレットを Add-SPShellAdmin 使用して、SharePoint Server コマンドレットを使用するアクセス許可を付与できます。

    注:

    アクセス許可がない場合は、セットアップ管理者またはSQL Server管理者に問い合わせてアクセス許可を要求します。 PowerShell のアクセス許可の詳細については、「 Add-SPShellAdmin」を参照してください。

  2. SharePoint 管理シェルを開きます。

  3. PowerShell コマンド プロンプト (つまり PS C:\>) で、次の構文を入力します。

New-SPWebApplication -Name 'Contoso Sites' -port 80 -ApplicationPool ContosoAppPool -ApplicationPoolAccount (Get-SPManagedAccount 'Contoso\JDoe') -AuthenticationProvider (New-SPAuthenticationProvider -UseWindowsIntegratedAuthentication)

ルート サイト コレクションを作成する

ルート サイト コレクションは、任意の Web アプリケーションの要件です。 コンテンツのクロールにも必要です。 このサイト コレクションには、Web アプリケーションと同じ URL が必要です。 現在、SharePoint では、Web アプリケーションと同じ URL でホスト名付きサイト コレクションを作成できなくなります。 したがって、ルート サイト コレクションはパスベースのサイト コレクションとして作成されます。

A web application with a root site.

次の例では、ルート サイト コレクションである空のサイト コレクションを作成します。

New-SPSite 'http://<servername>' -Name 'Portal' -Description 'Portal on root' -OwnerAlias 'contoso\administrator' -language 1033 -Template 'STS#0'

コンテンツ ソースには、Web アプリケーションのルート サイト コレクションのみが表示されます。 Web アプリケーション内の他のすべてのホスト名付きサイト コレクションはコンテンツ ソースに表示されませんが、既定では、検索によって他のホスト名付きサイト コレクションが自動的にクロールされます。

ホスト名付きサイト コレクションを作成する

ホスト名付きサイト コレクションを作成するには、Microsoft PowerShell を使用する必要があります。 SharePoint Server サーバーの全体管理 Web アプリケーションを使用してホスト名付きサイト コレクションを作成することはできませんが、サーバーの全体管理を使用してサイト コレクションを作成した後で管理できます。

次の例に示すように、 -HostHeaderWebApplication パラメーターを指定して Microsoft PowerShell New-SPSite コマンドレットを使用して、ホスト名付きサイト コレクションを作成できます。

ホスト名付きサイト コレクションを作成するには:

  1. 次のメンバーシップがあることを確認します。

    • SQL Server インスタンスの securityadmin 固定サーバー ロール。

    • 更新するすべてのデータベースの db_owner 固定データベース ロール。

    • Microsoft PowerShell コマンドレットを実行しているサーバー上の Administrators グループ。

    管理者は、 コマンドレットを Add-SPShellAdmin 使用して、SharePoint Server コマンドレットを使用するアクセス許可を付与できます。

    注:

    アクセス許可がない場合は、セットアップ管理者またはSQL Server管理者に問い合わせてアクセス許可を要求します。 PowerShell のアクセス許可の詳細については、「 Add-SPShellAdmin」を参照してください。

  2. SharePoint 管理シェルを開きます。

  3. PowerShell コマンド プロンプト (つまり PS C:\>) で、次の構文を入力します。

    New-SPSite 'http://portal.contoso.com' -HostHeaderWebApplication (Get-SPWebApplication 'Contoso Sites') -Name 'Portal' -Description 'Customer root' -OwnerAlias 'contoso\administrator' -language 1033 -Template 'STS#0'
    

    この構文では、"Contoso Sites" という名前の SharePoint Server Web アプリケーションに URL https://portal.contoso.com を持つホスト名付きサイト コレクションを作成します。

ホスト名付きサイト コレクションで管理パスを使用する

ホスト名付きサイト コレクションで管理パスを実装できます。 同じ顧客に対して複数のサイト コレクションを提供し、各サイト コレクションで顧客の固有のホスト名を共有しながら、ホスト名の後の URL パスで区別できます。 ホスト名付きサイト コレクションに対する管理パスは、ファームにつき 20 個に制限されます。 詳細については、「SharePoint Server のソフトウェアの境界と制限」を参照してください。

ホスト名付きサイト コレクションの管理パスの動作は、パスベースのサイト コレクションの管理パスとは異なります。 ホスト名付きサイト コレクションの管理パスは、ホスト名付きサイト コレクションが存在する Web アプリケーションに関係なく、ファーム内のすべてのホスト名付きサイト コレクションで使用できます。 一方、パスベースのサイト コレクションの管理パスは、同じ Web アプリケーション内のサイトにのみ適用されます。 パス ベースのサイト コレクションの管理パスは、他の Web アプリケーションのパス ベースのサイト コレクションには適用されません。 ある種類のサイト コレクションの管理パスは、他の種類のサイト コレクションには適用されません。

管理パスを作成するには、最初に目的の基本 URL でサイト コレクションを作成する必要があります。 たとえば、 を作成 http://teams.contoso.com/finance するには、まず のサイト コレクションを作成する http://teams.contoso.com必要があります。

ホスト名付きサイト コレクションで使用する管理パスを作成するには、PowerShell New-SPManagedPath コマンドレットで HostHeader パラメーターを指定します。次に例を示します。

New-SPManagedPath 'departments' -HostHeader

Explicit パラメーターを使用して明示的な管理パスを作成することもできます。

次の例では、管理パスで作成されたホスト名付きサイト コレクションを示します。

New-SPSite 'http://portal.contoso.com/departments/marketing' -HostHeaderWebApplication (Get-SPWebApplication 'Contoso Sites') -Name 'Marketing' -Description 'Portal Marketing' -OwnerAlias 'contoso\administrator' -language 1033 -Template 'STS#0'

既存の管理パスを削除するには、PowerShell Remove -SPManagedPath コマンドレットを使用します。次に例を示します。

Remove-SPManagedPath 'departments' -HostHeader

サイト コレクションが存在する場合でも、PowerShell を使用して管理パスを削除できます。 管理パスを削除すると、サイト コレクションにアクセスできなくなります。 既存のサイト コレクションにアクセスするには、PowerShell を使用して管理パスを再作成します。

ホスト名付きサイト コレクションに URL をマップする

新しいホスト名サイト コレクションを作成すると、既定の代替アクセス マッピングは引き続き存在しますが、使用できません。 ホスト名付きサイト コレクションの URL マッピングを管理するには、PowerShell のコマンドを使用します。

マッピングを既存のサイトに追加します。

Set-SPSiteUrl (Get-SPSite 'http://teams.contoso.com') -Url 'http://teamsites.contoso.com' -Zone Intranet

各 URL マッピングが 1 つの領域に適用されます。 URL をマップするときは、次のいずれかの領域名を使用します。

  • 既定値

  • イントラネット

  • インターネット

  • Custom

  • Extranet

Zone パラメーターを指定せず、URL マッピング エントリが新しい場合は、既定のゾーンが使用されます。 ここでも、固有のサイト コレクションに対する URL の数は 5 個に制限されます。

サイトのマッピングを削除します。

Remove-SPSiteUrl 'http://teamsites.contoso.com'

サイトのすべての URL マッピングを表示します。

Get-SPSiteUrl -Identity (Get-SPSite 'http://teams.contoso.com')

ホスト名付きサイト コレクション用に SSL 証明書を構成する

重要

SharePoint Server サブスクリプション エディションを使用している場合は、新しい証明書管理機能を使用して、Web アプリケーションに SSL 証明書をインストールして割り当てます。 この機能を使用すると、IIS で SSL 証明書を手動で構成する代わりに、SharePoint に SSL 証明書を直接インストールして管理できます。

SSL を使用する 1 つの Web アプリケーションを構成した後、その Web アプリケーション内に複数のホスト名付きサイト コレクションを作成できます。 SSL を使用してサイトを参照するには、IIS Web サイトにサーバー証明書をインストールして割り当てる必要があります。 1 つの Web アプリケーション内の各ホスト名付きサイト コレクションは、IIS Web サイトに割り当てられた 1 つのサーバー証明書を共有します。

ワイルドカード証明書またはサブジェクト代替名 (SAN) 証明書を取得した後、その証明書と一致するホスト名付きサイト コレクションの URL 形式を使用する必要があります。 たとえば、*.contoso.com ワイルドカード証明書を取得する場合は、ホスト名付きサイト コレクション URL (、など) をhttps://site1.contoso.comhttps://site2.contoso.com生成して、これらのサイトがブラウザーの SSL 検証に合格できるようにする必要があります。 ただし、サイトに対して固有の第 2 レベル ドメイン名が必要な場合は、複数のホスト名付きサイト コレクションではなく、複数の Web アプリケーションを作成する必要があります。

ホスト名付きサイト コレクションの SSL を構成するには、Web アプリケーションを作成するときに SSL を有効にします。 この設定では、HTTP バインドではなく SSL バインドを持つ IIS Web サイトが作成されます。 Web アプリケーションを作成した後は、IIS マネージャーを開き、その SSL バインドに証明書を割り当てます。 その後、その Web アプリケーション内にサイト コレクションを作成できます。

ホスト名付きサイト コレクションを使用して複数のゾーンを実装する場合は、各ゾーンと対応する IIS サイトに対して証明書とバインド (SSL または HTTP) の構成が適切であることを確認します。

オフボックス SSL ターミネーションでホスト名付きサイト コレクションを使用する

オフボックス SSL ターミネーションでホスト名付きサイト コレクションを使用できます。 ホスト名付きサイト コレクションで SSL ターミネーションを使用するには、いくつかの要件があります。

注:

SSL のオフボックス終了はサポートされていますが、プロキシ サーバーから Web サーバーに暗号化されていないトラフィックが送信されるため、推奨されません。

  • 少なくとも 1 つの IIS サイトに、ポート 80 (またはターミネーターが要求を転送するポート) のバインドが必要です。 HTTP/80 である Web アプリケーションの IIS サイト (または Web アプリケーションの領域の IIS サイト) を使用することをお勧めします。

  • SSL ターミネーターまたはリバース プロキシが、クライアントからの元の HTTP ホスト ヘッダーを保持する必要があります。

  • クライアントの SSL 要求が既定の SSL ポート (443) に送信される場合、SSL ターミネーターまたはリバース プロキシは、復号化された HTTP 要求を既定の HTTP ポート (80) でフロントエンド Web サーバーに転送する必要があります。 クライアントの SSL 要求が既定ではない SSL ポートに送信される場合は、SSL ターミネーターまたはリバース プロキシは復号化された HTTP 要求を同じ既定ではないポートでフロントエンド Web サーバーに転送する必要があります。

  • リバース プロキシ サーバーなどの SSL 接続を終了するデバイスは、カスタム HTTP ヘッダー Front-End-Https: On を生成できる必要があります。 このヘッダーは、Outlook Web Access (OWA) で使用されるカスタム ヘッダーと同じです。 フロントエンド Https: オン/オフです。 このカスタム ヘッダーの詳細については、後述の説明をご覧ください。

オフボックス SSL ターミネーションでホスト名付きサイト コレクションを使用するには、通常の SSL ターミネーションと同じように Web アプリケーションを構成し、前述した要件が満たされるようにする必要があります。 このシナリオでは、SharePoint Server は HTTP ではなく HTTPS を使用して、その Web アプリケーションのそのホスト名付きサイト コレクションのリンクを表示します。

リバース プロキシ サーバーは、SharePoint Server のホスト名付きサイト コレクションを発行し、オフボックス SSL ターミネーションを実行できます。 このシナリオのリバース プロキシ サーバーは、エンド ユーザーと SharePoint Web フロントエンド サーバーの間の接続の種類を、SSL/TLS から HTTP に、またはその逆に変更します。 このシナリオのリバース プロキシ サーバーは、要求を SharePoint Web フロントエンド サーバーに転送するときに、ユーザーの要求に追加の HTTP ヘッダーを挿入する必要があります。 この追加の HTTP ヘッダーは、エンド ユーザーが開始した接続の種類を SharePoint Server に示し、SharePoint Server がその応答で URL を適切にレンダリングできるようにします。 HTTP ヘッダーの名前は "Front-End-Https" であり、使用できる値は次のとおりです。

表: Front-End-Https ヘッダーの値

説明
オン リバース プロキシ サーバーは、エンド ユーザーの要求を暗号化された (SSL または TLS) HTTPS 接続で受信しました。 例: Front-End-Https: On
Off リバース プロキシ サーバーは、エンド ユーザーの要求を暗号化されていない HTTP 接続で受信しました。

値では大文字と小文字は区別されません。 たとえば、on、ON、On、oN はすべて受け付けられます。

このカスタム ヘッダーは、ホスト名付きサイト コレクションでのみ動作します。 パス ベースのサイト コレクションでは機能しません。

次の例は、https で作成されたホスト名付きサイト コレクションを示しています。

New-SPSite 'https://portal.contoso.com' -HostHeaderWebApplication  (Get-SPWebApplication 'Contoso Sites') -Name 'Portal' -OwnerAlias 'contoso\administrator' -language 1033 -Template 'STS#0'

この例では、https://portal.contoso.com という URL を持つホスト名付きサイト コレクションが、https://webapp.contoso.com という URL を持つ SharePoint Server Web アプリケーションに作成されます。

複数の領域がある環境でアプリケーションを有効にする

注:

このセクションは、SharePoint Server 2013 にのみ適用されます。

2013 年 3 月の公開更新プログラムにより、各 Web アプリケーション領域に対してアプリケーション ドメインを構成し、代替アクセス マッピングとホスト ヘッダー Web アプリケーションの構成を使用できるようになりました。 この更新プログラムのリリース前は、ホストできるアプリケーション ドメインは 1 つに限られ、そのドメインは既定の領域内に存在する必要がありました。 代替アクセス マッピングまたはホスト ヘッダー Web アプリケーション構成でアプリ ドメインを使用できませんでした。

この問題を解決するには、SharePoint Server 累積的な更新プログラム サーバー修正プログラム パッケージ: 2013 年 3 月 12 日を適用します。「SharePoint 2013 の更新プログラム」をご覧ください。

パスベースのサイト コレクションをホスト名付きサイト コレクションに移行する

既存の Web アプリケーションでホスト名付きサイト コレクションを特定する

次のスクリプトを使用すると、パスベースの既存のサイト コレクションとホスト名を特定できるため、後でいずれかの種類を別の種類に変換するかどうかを決定できます。

$webApp = Get-SPWebapplication 'http://webapp.contoso.com'
foreach($spSite in $webApp.Sites)
{
if ($spSite.HostHeaderIsSiteName)
{ Write-Host $spSite.Url 'is host-named' }
else
{ Write-Host $spSite.Url 'is path based' }
}

パスベースのサイト コレクションをホスト名付きサイト コレクションに変換する

パス ベースのサイト コレクションをホスト名付きサイト コレクションに変換し、ホスト名付きサイト コレクションをパス ベースのサイト コレクションに変換するには、PowerShell コマンドレット Set-SPSite を使用します。 サイトの名前を変更した後、キャッシュを強制的に更新するには、アプリ プールのリサイクルをお勧めします。 SharePoint サーバーの全体管理 Web サイトや、コンテンツ データベースのアタッチとデタッチ、マウントとマウント解除を行うWindows PowerShellコマンドレットを使用してサイト コレクションを変換することはできません。

次の例では、標準のサイト コレクションをホスト名付きサイト コレクションに変換しています。

Get-SPSite https://SP2013content.contoso.com/sites/PathBasedSiteCollection|Set-SPSite -url https://HostNamedSiteCollection.contoso.com

ホスト名付きサイト コレクションで複数の Web アプリケーションを使用する

複数の Web アプリケーションを使用すると、システムに対する運用のオーバーヘッドと複雑さが増します。 サイト コレクションには 1 つの Web アプリケーションを使用することをお勧めします。 ただし、次の理由により、サイト コレクションを複数の Web アプリケーション間で実装することが必要になる場合があります。

  • 組織のセキュリティ ポリシーにより、Web アプリケーションまたはアプリケーション プールを分ける必要がある場合。

  • Web アプリケーションの構成を変える必要がある場合。

  • 組織が複数のプロキシ グループを使用する必要がある場合。

ファーム内の複数の Web アプリケーションを使用してホスト名付きサイト コレクションを実装する方が複雑になります。これは、より多くの構成手順を完了する必要があるためです。 たとえば、ホスト名付きサイトを含む URL は、1 つのファームで同じポートを共有する複数の Web アプリケーションに分散される場合があります。 このシナリオでは、要求が正しい Web アプリケーションにマップされるように、さらに構成手順が必要です。 各 Web アプリケーションを表す個別の IP アドレスを構成して、ファーム内の各 Web サーバー上のマッピングを手動で構成する必要があります。 また、各サイトに一意の IP アドレスを割り当てるには、ホスト ヘッダー バインドを作成して管理する必要があります。 スクリプトは、サーバー間でこの構成を管理およびレプリケートできます。ただし、この構成のレプリケーションにより、ソリューションが複雑になります。 各一意の URL には、DNS でのマッピングも必要です。 一般に、複数の Web アプリケーションが要件である場合は、代替アクセス マッピングを使用したパス ベースのサイト コレクションをお勧めします。

重要

SharePoint Server サブスクリプション エディション バージョン 23H1 を使用すると、ユーザーはワイルドカード ホスト ヘッダー バインドを Web アプリケーションに割り当てることができます。 この新機能は、ホスト名付きサイト コレクションで複数の Web アプリケーションを次の方法で使用するのに役立ちます。

  1. ユーザーは、各 SharePoint サーバー上の Web アプリケーションに一意の IP アドレス バインドを手動で割り当てる必要がなくなりました。 SPSE バージョン 23H1 を実行しているユーザーは、代わりに、管理が簡単な各 Web アプリケーションにワイルドカード ホスト ヘッダーを割り当てることができます。

  2. 各 Web アプリケーションに割り当てられるワイルドカード ホスト ヘッダーは一意である必要があります。 たとえば、Web アプリケーション 1 は、 *.internal.example.comWeb アプリケーション 2 は 、などです *.external.example.com

  3. これらの Web アプリケーションのホスト名付きサイト コレクションは、Web アプリケーションのワイルドカード ホスト ヘッダー パターンに準拠している必要があります。 たとえば、Web アプリケーションに の*.external.example.comワイルドカード ホスト ヘッダーがある場合は、 などの site1.external.example.comsite2.external.example.comDNS 名を使用してホスト名付きサイト コレクションをホストできます。

  4. ワイルドカード ホスト ヘッダー バインドでは、DNS 名の左端のラベルとして 1 つのワイルドカード文字のみを使用できます。 たとえば、有効なワイルドカード ホスト ヘッダーには を指定*.external.example.comできますが、、*.*.example.comexternal*.example.com*external.example.com、などにすることはできませんexternal.*.example.com

次の 2 つの表では、サイト コレクションを実装するための設計に関する 3 つの選択肢を比較します。 これらの表を見ると、各方法を使用した結果およびアーキテクチャによる構成の違いがわかります。

表: サイト コレクションを準備するための異なる設計手法の結果

  ファーム内のすべてのサイトが 1 つの Web アプリケーションに統合されたホスト名付きサイト コレクション 代替アクセス マッピングと複数の Web アプリケーションを使用するパスベースのサイト コレクション ファーム内の複数の Web アプリケーションを使用するホスト名付きサイト コレクション
サイト コレクションの準備 Microsoft PowerShell またはカスタム サイト コレクション準備ソリューションを使用してサイトを準備します。 サーバーの全体管理または Microsoft PowerShell を使用してサイトを展開します。 Microsoft PowerShell またはカスタム サイト コレクション準備ソリューションを使用してサイトを準備します。
URL 管理 DNS 内のすべてのサイト コレクションをマップして、Web アプリケーションを表す単一の IP アドレスを指すことができます。 複数の領域を実装した場合は、各サイト URL に対して代替アクセス マッピングを構成します。 各領域では DNS でのマッピングも必要です。 同じポートを共有するサイトの要求が正しい Web アプリケーションにマップされるようにするには、追加の構成が必要です。 一意の各ホスト名には DNS でのマッピングも必要です。 この構成は、各サイトのファーム内の各 Web サーバー上で手動で完了する必要があります。
その他の URL 領域ごとに 1 つずつ、最大で 5 つの URL をホスト名付きサイト コレクションに割り当てることができます。 Web アプリケーションを複数のゾーンに拡張する必要はありません。 ゾーンが実装されていない場合は、既定のゾーンが使用されます。 許可されるゾーンの数は 5 であるため、サイト コレクションの URL の数は 5 に制限されます。 領域ごとに 1 つずつ、最大で 5 つの URL をホスト名付きサイト コレクションに割り当てることができます。 Web アプリケーションを複数のゾーンに拡張する必要はありません。 ゾーンが実装されていない場合は、既定のゾーンが使用されます。
サービス アプリケーション ファーム内のすべてのサイトが 1 つのサービス アプリケーション グループを使用します。 異なる Web アプリケーションに対してカスタム サービス アプリケーション グループを実装できます。 異なる Web アプリケーションに対してカスタム サービス アプリケーション グループを実装できます。
領域 同じサイト コレクションに異なる URL を実装するために、複数のゾーンを実装する必要はありません。 ゾーンが実装されていない場合は、既定のゾーンが使用されます。 同じサイト コレクションに対して異なる URL を実装するためには、複数の領域が必要です。 同じサイト コレクションに異なる URL を実装するために、複数のゾーンを実装する必要はありません。 ゾーンが実装されていない場合は、既定のゾーンが使用されます。
認証 1 つの Web アプリケーションでは、認証オプションは 5 つの領域に制限されています。 ただし、1 つの領域に多くの認証方法を実装できます。 各 Web アプリケーションに異なる認証および領域の設計を実装できます。 各 Web アプリケーションに異なる認証および領域の設計を実装できます。
認証 ドメイン間のクライアント スクリプト分離が用意されています。 必要に応じて Web アプリケーションを専用のアプリケーション プールに分離し、プロセス分離を実現できます。
ドメイン URL 間の分離が用意されています。
必要に応じて Web アプリケーションを専用のアプリケーション プールに分離し、プロセス分離を実現できます。
ドメイン URL 間の分離が用意されています。
ポリシー 領域を使用して、異なるポリシーをホスト名付きサイトに割り当てることができます。 個々のサイトまたはドキュメントに構成されている権限に関係なく、Web アプリケーション レベルでポリシーを使用して権限を適用できます。 また、異なる領域に異なるポリシーを実装できます。 個々のサイトまたはドキュメントに構成されている権限に関係なく、異なるポリシーを異なる Web アプリケーションに実装して権限を適用できます。
また、異なる領域に異なるポリシーを実装できます。

設計上の決定にも影響を与える可能性のあるスケーラビリティの数には、サイト コレクション、コンテンツ データベース、管理パスの推奨される最大数があります。

次の表に、この記事で説明している 3 つの各設計手法に基づいて URL を管理するために必要な構成の概要を示します。

表: 異なるサイト コレクション設計に必要な構成

  ファーム内のすべてのサイトが 1 つの Web アプリケーションに統合されたホスト名付きサイト コレクション 代替アクセス マッピングと複数の Web アプリケーションを使用するパスベースのサイト コレクション ファーム内の複数の Web アプリケーションを使用するホスト名付きサイト コレクション
SharePoint Server 内 Web アプリケーションを作成します。
ユーザーがアクセスできないルート サイト コレクションを作成します (例: https://HNSC01.fabrikam.com)。
ホスト ヘッダーを使用してホスト名付きサイト コレクションを作成します (例: https://intranet.fabrikam.com)。
必要に応じて、 Set-SPSiteUrl を使用して各サイト コレクションの URL を追加し、ゾーンを構成します。 (企業ポータルの設計サンプルでは、ゾーンが 1 つしかないため、必要ありません)。
ホスト ヘッダーを使用して Web アプリケーションを作成します (例: https://intranet.fabrikam.com)。
オプションで、代替アクセス マッピングを構成します。 デザイン サンプルでは、ゾーンが 1 つしかないため、必要はありません)。
ルート パスベースのサイト コレクションを作成します。
Web アプリケーションを作成します。
ユーザーがアクセスできないルート サイト コレクションを作成します (例: https://HNSC01.fabrikam.com)。
ホスト ヘッダーを使用してホスト名付きサイト コレクションを作成します (例: https://intranet.fabrikam.com)。
必要に応じて、 Set-SPSiteUrl を使用して各サイト コレクションの URL を追加し、ゾーンを構成します。 (企業ポータルの設計サンプルでは、ゾーンが 1 つしかないため、必要ありません)。
IIS 内 Web アプリケーションですべてのホスト名付きサイト (ドメイン) の SSL 証明書 (ワイルド カード証明書または SAN 証明書) を関連付けます。 各領域の IIS の SSL 証明書を関連付けます (各領域は IIS では個別の Web アプリケーションです)。 Web アプリケーションでホスト名付きサイト (ドメイン) の SSL 証明書 (ワイルド カード証明書または SAN 証明書) を関連付けます。
ファーム内の各 Web サーバーおよびポートを共有する各 Web アプリケーション上:
各 Web アプリケーションを表す個別の IP アドレスを構成します。
IIS Web サイト バインドを手動で編集して、Web アプリケーションの作成時に作成されたホスト ヘッダー バインドを削除し、このバインドを IP アドレス バインドに置き換えます。

異なる IP アドレスで複数の Web アプリケーションを使用する場合は、NIC、DNS、および各サーバーのロード バランサーの追加構成を完了する必要がある場合があります。

ホスト名付きサイト コレクションで複数の Web アプリケーションを作成する

ホスト名付きサイト コレクションと組み合わせて同じサーバーおよびポートで複数の Web アプリケーションを実行するには、異なる IP アドレスを Web アプリケーションに割り当てる必要があります。 この種のアーキテクチャでは、IP アドレスを Web サーバーに追加し、ホスト名が Web アプリケーションの IP アドレスを指すようにネットワーク ルーターを構成する必要があります。

注:

ホスト ヘッダーを持たない Web アプリケーションを作成できます。 ホスト ヘッダーを持たない Web アプリケーションを作成する場合、同じ Web サーバー上にホスト名付きサイト コレクションを持つ複数の Web アプリケーションを作成することはできません。

ホスト名付きサイト コレクションに対して複数の Web アプリケーションを作成するプロセスには、次のタスクが含まれます。

  • 複数の Web アプリケーションを作成します。

  • ファーム内の各 Web サーバーの IIS で新しい仮想 IP アドレスを追加します。

ホスト名付きサイト コレクション用に複数の Web アプリケーションを作成する

次の例では Web アプリケーションを作成します。

New-SPWebApplication -Name 'webapp' 'webapp.contoso.com' -port 80 -ApplicationPool ContosoAppPool -ApplicationPoolAccount (Get-SPManagedAccount 'Contoso\JDoe') -AuthenticationProvider (New-SPAuthenticationProvider -UseWindowsIntegratedAuthentication)

Web アプリケーションごとにこのタスクを繰り返します。

IIS で仮想 IP アドレスを追加する

Web アプリケーションをホストするすべてのサーバーで、IP バインドを適用する必要があります。 スリープ コマンドを 60 秒に設定し、Web アプリケーションの既存のホスト ヘッダーが削除される前に、ファーム内のすべてのサーバーに IP バインドが設定されるようにします。 このジョブにはリモート スクリプトを使用できます。

次のコマンドを使用して、作成した各 Web アプリケーションに固有の IP バインドを追加した後、ホスト ヘッダー バインドをそれらの Web アプリケーションから削除します。

Import-Module WebAdministration
#add empty binding to webapp on IP 192.168.10.20
New-WebBinding -Name 'webapp' -IPAddress '192.168.10.20' -HostHeader ''
Sleep 60
# remove existing binding webapp.contoso.com from existing web application
Get-WebBinding -Name 'webapp' -HostHeader 'webapp.contoso.com'|Remove-WebBinding

関連項目

その他のリソース

Get-SPSiteUrl

Set-SPSiteUrl

Remove-SPSiteUrl

SharePoint Server の論理アーキテクチャを計画する