ホスト名付きサイト コレクションを計画する (Office SharePoint Server)

この記事の内容 :

  • ホスト名付きサイト コレクションについて

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

  • ホスト ヘッダーを適用する

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

  • HTTP および HTTPS 経由でホスト名付きサイトを公開する

Microsoft Office SharePoint Server 2007 では、ホスト名の付いたサイト コレクションとパスベースのサイト コレクションの両方がサポートされています。ホスト名付きサイト コレクションを使用すると、サイト コレクションごとにホスト名が異なる、スケーラブルなホスト ソリューションが実現します。つまり、ホスト名付きサイト コレクションには、単一のホスト名 URL があります。ホスト名付きサイト コレクションを展開することにより、Web アプリケーションで WINS エントリや DNS エントリをサイト コレクションにマップできます。

パスベースのサイト コレクションを使用すると、Web アプリケーションごとにホスト名が異なる、社内ホスト ソリューションが実現します。パスベースの展開では、Web アプリケーションの下位にある管理パスにサイト コレクションがマップされます。パスベースのサイト コレクションとホスト名付きサイト コレクションを同じ Web アプリケーション内に混在させることも、Web アプリケーションに何千ものサイト コレクションを含めることもできます。

パスベースのサイト コレクションでは、複数のゾーンへの代替アクセス マッピングがサポートされます。各ゾーンには、WINS または DNS にマッピングされた個別の URL を割り当てることができます。

ホスト名付きサイト コレクションについて

Office SharePoint Server 2007 でホスト名付きサイト コレクションを使用すると、パスの代わりにホスト ヘッダー名を使用して、ユーザーがアクセスするサイト コレクションや、ユーザー要求に応じて返されるコンテンツを決定できます。ホスト名付きサイト コレクションを作成すると、ユーザー用のバニティ URL を持つ複数のサイト コレクションをホストできます。ホスト名付きサイト コレクションを追加するたびに、そのサイト コレクションの URL を、Office SharePoint Server 2007 検索の開始アドレスとして手動で追加する必要があります。これにより、Office SharePoint Server 2007 検索でホスト名付きサイト コレクションをクロールできるようになります。

ホスト名付きサイト コレクションでのフォーム認証の構成については、「Prepare to crawl host-named sites that use forms authentication」を参照してください。

ホスト名付きサイト コレクションでの基本認証の構成については、「Prepare to crawl host-named sites that use Basic authentication」を参照してください。

ホスト名付きサイト コレクションを使用すると、1 つの Web アプリケーション内に複数のルートレベル サイト コレクションを作成できます。たとえば、ホストしている組織の管理者が、ホスト名付きサイト コレクションを使用して、ドメイン名の付いたサイトを複数作成します。Office SharePoint Server 2007 では、単一の Web アプリケーション内で複数のドメインを使用できます。これは、Windows SharePoint Services 2.0 で拡張ホスト モードと呼ばれていました。拡張ホスト モードでは、http://www.adatum.com や https://www.contoso.com の複数ドメインを、異なるサイト コレクションとして同一 Web アプリケーション内に配置できます。Office SharePoint Server 2007 では、ホスト名付きサイト コレクションによって、同様の拡張ホスト機能が提供されます。

複数のホスト名 URL に応答するパスベースのサイト コレクションをサポートする必要がある場合は、ホスト名付きサイト コレクションではなく、代替アクセス マッピングを使用することを検討してください。代替アクセス マッピングの詳細については、「代替アクセス マッピングを計画する (Office SharePoint Server)」を参照してください。

ホスト名付きサイト コレクションは複数の Web アプリケーションで使用できます。Office SharePoint Server 2007 では、複数の IIS Web サイトを拡張できます。ホスト名付きサイト コレクションでは、ポータル サイトがサポートされています。

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

stsadm.exe コマンドライン ツールを使用すると、新しいサイトを作成できます。ホスト名付きサイト コレクションの作成には、Office SharePoint Server 2007 のサーバーの全体管理 Web アプリケーションを使用することはできません。

サイト コレクションを作成する stsadm.exe createsite コマンドを使用し、パスベースではなくホスト名付きであることを示すために次のパラメータを追加します。

-hhurl <Web application URL>

たとえば、www.contoso.com という名前の Web アプリケーションがある場合、URL が http://hoster.contoso.com のホスト名付きサイト コレクションを追加するには、次のコマンドを使用します。

stsadm.exe -o createsite
-url http://hoster.contoso.com
-ownerlogin contoso\siteowner
-owneremail siteowner@contoso.com
-hhurl https://www.contoso.com

インターネット サービス プロバイダ (ISP) は DNS サーバーを構成し、http://hoster.contoso.com を適切な IP アドレスに関連付けます。テストのため、\system32\drivers\etc\hosts ファイルを編集して、ホスト名付きサイト コレクションを、Office SharePoint Server 2007 を実行しているサーバーの IP アドレスに関連付けます。構成されている場合は、http://hoster.example.com で自分のサイトにアクセスできます。

ホスト名付きサイト コレクションの作成後にその URL を変更するには、次のコマンドを使用します。

stsadm.exe -o renamesite

このコマンドは Office SharePoint Server 2007 修正プログラムで使用できます。stsadm.exe -o renamesite コマンドの使用方法の詳細については、「Renamesite : Stsadm 操作 (Office SharePoint Server)」を参照してください。

ホスト名付きサイト コレクションを使用するかどうかを、構成データベースの作成時に指定する必要はありません。サイト コレクションの作成時に、ホスト名付きにするかパスベースにするかを指定できます。

ホスト名付きサイトを作成するには、コマンドライン ツールに加えて、Office SharePoint Server 2007 オブジェクト モデルを使用することもできます。次のコード サンプルでも、同じサイト http://hoster.contoso.com が作成されます。

SPWebApplication webApp = SPWebApplication.Lookup(new
Uri("https://www.contoso.com"));
SPSiteCollection sites = webApp.Sites;
SPSite Site = null;
Site = sites.Add("http://hoster.contoso.com", "Site_Title",
"Site_Description", 1033, "STS#0", "contoso\owner",
"Owner_Display_Name", "Owner_Email", "contoso\secondaryowner,
"Secondary_Owner_Display_Name", "Secondary_Owner_Email", true);

ホスト ヘッダーを適用する

ホスト ヘッダーは、次の 2 つのレベルで適用できます。

  • Web アプリケーション (IIS Web サイト) レベル

  • サイト コレクション レベル

多くの場合、Web アプリケーション レベルでホスト ヘッダーを適用すると、ホスト名付きサイト コレクションにアクセスできなくなります。これは、IIS が、その設定と異なるホスト名を持つ要求に応答しないためです。しかし、既定ゾーンの IIS Web サイトでホスト ヘッダーを使用しないように構成し、その他のゾーンの IIS Web サイトに対してのみホスト ヘッダーを適用すると、ホスト名付きサイト コレクションにアクセスできます。こうすると、既定ゾーン内に存在すると想定される、ホスト名付きサイト コレクションには既定ゾーンを使用し、パスベースのサイト コレクションには他のゾーンの代替アクセス マッピング機能を使用できます。

Web アプリケーション (IIS Web サイト) レベルでホスト ヘッダーを適用するには

  1. [スタート] ボタンをクリックし、[すべてのプログラム] をポイントします。次に、[Microsoft Office Server] をポイントし、[SharePoint 3.0 サーバーの全体管理] をクリックします。

  2. サーバーの全体管理のホーム ページで、[アプリケーション構成の管理] をクリックします。

  3. [アプリケーション構成の管理] ページの [SharePoint Web アプリケーション構成の管理] セクションで、[Web アプリケーションの作成または拡張] をクリックします。

  4. [Web アプリケーションの作成または拡張] ページの [SharePoint Web アプリケーションの追加] セクションで、[新しい Web アプリケーションの作成] をクリックします。

  5. [新しい Web アプリケーションの作成] ページの [IIS Web サイト] セクションで、[ホスト ヘッダー] ボックスに Web アプリケーションへのアクセスに使用する URL を入力することにより、新しい Web アプリケーション用のホスト ヘッダーを構成します。

ホスト ヘッダーの値は、IIS Web サイト用に作成するバインドを表し、指定のホスト ヘッダー宛てに送信された要求に対してのみ IIS が応答するようにします。IIS マネージャから手動で IIS バインドを変更することもできますが、これはお勧めしません。IIS マネージャを使用して行った変更は Office SharePoint Server 2007 に反映されません。Office SharePoint Server 2007 で、同じ Web アプリケーションとゾーンに対して、ファーム内の他のコンピュータ上の IIS Web サイトを準備しようとすると、[新しい Web アプリケーションの作成] ページで指定されたバインドが使用されます。IIS Web サイト用の既存のバインドを変更するには、ゾーンから Web アプリケーションを削除した後、使用するバインドで Web アプリケーションをゾーンに再度拡張します。

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

Office SharePoint Server 2007 には、さまざまなユーザー タスクと管理タスクに使用する、一連の Web サービスが付属しています。これらの管理タスクの一例は、新しいサイトの作成です。CreateSite Web メソッドでは、ホスト名付きサイト コレクションを作成できません。この問題を回避するには、API サンプル コードをラップする Web サービスを記述します。

新しい Office SharePoint Server 2007 サイトを準備するときは、いくつかの構成オプションを追加で考慮します。サイトの作成時に適切なサイト テンプレートを指定すると、あらかじめ構成された Web パーツやその他のユーザー インターフェイス要素のうちのどれを新しいサイトで使用できるかが決まります。ホスティングのシナリオでは、チーム サイト テンプレート (サイト作成時の値は "STS#0") か、Web パーツや構築済みリストを持たない空のサイト (値は "STS#1") を選択します。

ホスティング環境では、新しく準備する Office SharePoint Server 2007 の Web サイトごとにサイト クォータを指定することを検討してください。サイト クォータ テンプレートのサポートはサンプルの Web サービスには含まれていませんが、サイト クォータを追加して使用することにより、あらかじめ決められている制限に基づくサイト クォータ テンプレートを作成できます。

SQL 認証を使用してホスト名付きサイト コレクションを作成する

ホスティング シナリオでは、SQL メンバシップ プロバイダを使用する場合、ホスト名付きサイト コレクションの構成と管理を正しく行うには、追加の手順が必要です。サイトの作成時には、サイト所有者にするユーザーを指定する必要があります。このため、所有者は、メンバシップ ディレクトリ内の既存のユーザーであることが前提となります。SQL メンバシップ プロバイダのこれらのタスクを簡素化するには、MembershipSiteAdmin.exe ツールを使用します。

注意

MembershipSiteAdmin.exe ツールのダウンロードについては、「SharePoint SQL site provider Sample Source Code (英語)」(https://www.codeplex.com/SharePointHosters/Release/ProjectReleases.aspx?ReleaseId=5097) を参照してください。

MembershipSiteAdmin.exe は、サイトとユーザーの作成方法、削除方法、およびアプリケーションへのマッピング方法を管理するためのコマンドライン ツールで、次のタスクを実行できます。

  • SQL メンバシップ データベースにユーザーを作成します。

  • SQL メンバシップ データベース内のユーザーを削除します。

  • Office SharePoint Server 2007 サイトを作成します。

  • Office SharePoint Server 2007 サイトを削除します。

  • 指定したユーザーに関連付けられているアプリケーションをすべて列挙します。また、システム内や他のアプリケーション内に、あるユーザーが既に存在するかどうかをチェックします。

Office SharePoint Server 2007 サイトの作成プロセスや削除プロセスは、stsadm.exe によって実行されます。これが行われるためには、stsadm.exe で使用できる構成ファイルが必要です。MembershipSiteAdmin.exe はカスタム ストアド プロシージャとメンバシップ プロバイダ API を呼び出し、stsadm.exe ツールをラップします。MembershipSiteAdmin.exe は、次のどちらかのカスタム ストアド プロシージャを呼び出すことによって、Office SharePoint Server 2007 サイトの完全修飾ドメイン名 (FQDN) にアプリケーション名をマッピングします。

  • aspnet_Sitemaps_CreateMapping は、入力としてアプリケーション名と FQDN を受け取ります。

  • aspnet_Sitemaps_DeleteMapping は、入力として FQDN を受け取ります。

ASP.NET メンバシップ サービス API (System.Web.Security.Membership) を使用すると、SQL メンバシップ リポジトリ内のユーザーを作成および削除できます。MembershipSiteAdmin.exe が Membership.CreateUser メソッドまたは Membership.DeleteUser メソッドを呼び出して、このプロセスを実行します。メンバシップ サービスによって使用されるプロバイダは、MembershipSiteAdmin.exe の App.config ファイル (MembershipSiteAdmin.exe.config) に指定されています。MembershipSiteAdmin.exe は、シッピング SQL メンバシップ プロバイダを使用してこれらのタスクを実行し、ユーザーに接続するアプリケーション名を指定します。MembershipSiteAdmin.exe.config ファイルでは、stsadm.exe ファイルの既定の場所をポイントする必要があります。Office SharePoint Server 2007 を別の場所にインストールした場合は、このアプリケーション設定を更新する必要があります。MembershipSiteAdmin.exe.config ファイルの次のセクションを参照してください。

<appSettings>
<add key="stsadmPath"
      value="C:\Program Files\Common Files\Microsoft Shared\Web server
extensions\12\BIN\" />
</appSettings>

HTTP および HTTPS 経由でホスト名付きサイトを公開する

ホスト名付きサイト コレクションを既定のポートで作成した場合、HTTP および HTTPS の両方のプロトコル経由で公開できます。サイト コレクションをその他のポートで作成した場合、ホスト名付きサイト コレクションごとにそれぞれ、HTTP または HTTPS のどちらかのみにすることができます。これは、createsite-url パラメータに入力した URL に応じて決まります。SSL ターミネーションなど、代替アクセス マッピングによって提供される高度なエクストラネット シナリオでは、ホスト名付きサイト コレクションを使用できません。

HTTP と HTTPS 用に 1 つずつ Web アプリケーションを作成すると、両方のプロトコル経由で検索結果を取得できます。検索では、Web アプリケーションの既定ゾーンに割り当てられたパブリック URL のプロトコル方式を使用して、ホスト名付きサイト コレクションで使用するプロトコル方式を決定します。ホスト名付きサイト コレクションで HTTP 経由の検索を可能にするには、このサイト コレクションを HTTP Web アプリケーションに含めます。ホスト名付きサイト コレクションで HTTPS 経由の検索を可能にするには、このサイト コレクションを HTTPS Web アプリケーションに含めます。

ホスト名付きサイト コレクション用の HTTPS を構成する

HTTPS を構成する前に、IIS Web サイトに証明書を適用する必要があります。したがって、HTTPS は、Office SharePoint Server 2007 の Web アプリケーション レベルでのみ構成できます。ホスティング シナリオでは、ホストで単一の Web アプリケーションを HTTPS に対して構成した後、その Web アプリケーション内にホスト名付きサイト コレクションを複数作成できます。技術的には、各 Web サイトが 1 つの証明書を共有します。ホストでワイルドカード証明書を取得し、そのワイルドカード証明書に一致するホスト名付きサイト コレクション URL ポリシーを使用する必要があります。たとえば、ホストで *.contoso.com ワイルドカード証明書を取得した場合、https://site1.contoso.com、https://site2.contoso.com などのホスト名付きサイト コレクション URL を生成して、これらのサイトでブラウザに SSL 検証を渡すことができるようにします。ただし、各サイトに一意の証明書を適用する必要がある場合、ホストで複数の Web アプリケーションを作成する必要があります。Web アプリケーションは、Office SharePoint Server 2007 のサイト コレクションほどスケーラブルではありません。

ホスト名付きサイト コレクション用に HTTPS を構成するには、サーバーの全体管理の [新しい Web アプリケーションの作成] ページで SSL を有効にする必要があります。Office SharePoint Server 2007 では Web アプリケーションに対してポート番号が自動的に割り当てられますが、異なるポート番号を手動で指定することもできます。

HTTPS サイトは、アカウント作成モード、Active Directory のドメイン アカウント モード、および Active Directory のフォーム認証用に作成できます。

Web アプリケーションを作成した後、IIS マネージャを開いて証明書を割り当てます。次に、サイト コレクションを作成します。既定以外のポートを使用する場合は、次の例に示すように、stsadm.exe –o createsite コマンドの –url–hhurl の両方のパラメータにポート番号を指定します。

stsadm.exe –o createsite
–ownerlogin contoso\administrator
–owneremail administrator@contoso.com
–url https://www.hoster.contoso.com:443
–hhurl https://www.contoso.com:443

このブックをダウンロードする

このトピックは、簡単に読んだり印刷したりできるように、次のダウンロード可能なブックに収められています。

入手できるすべてのブックの一覧については、「Office SharePoint Server 2007 のダウンロード可能なブック」を参照してください。