作成サイト要素を展開する (SharePoint Server 2010)

 

適用先: SharePoint Server 2010

トピックの最終更新日: 2016-11-30

ここでは、Microsoft SharePoint Server 2010 での作成サイト要素のカスタマイズの展開の、展開の手順、一般的な考慮事項、カスタム コンテンツの展開に関連するベスト プラクティスなどについて説明します。

この記事の内容 :

  • 作成サイト要素の展開について

  • はじめに

  • コンテンツ展開ジョブを使用してコンテンツを展開する

  • コンテンツ移行 API を使用してコンテンツを展開する

  • Windows PowerShell を使用してコンテンツ展開パッケージを作成する

作成サイト要素の展開について

作成サイト要素とは、サイト内の "コンテンツ" と考えることができます。SharePoint Server 2010 の Web サイトを構成する Web ページ、画像、レイアウト ページ、カスケード スタイル シート、その他のリソースのことです。作成サイト要素には、次のものがあります。

  • デザイン要素一般に、Microsoft SharePoint Designer 2010 などの設計ツールを使用して作成されるサイト要素です。これらのサイト要素は、サイトのコンテンツが表示されるフレームワークを構成します。デザイン要素の例として、マスター ページやレイアウトが挙げられます。

  • Web コンテンツ一般に、Web ブラウザーやクライアント作成用プログラム (Word 2010 など) で直接作成されるサイト要素です。これらのサイト要素は、サイトのコンテンツを提供します。Web コンテンツの例として、Web ページや画像が挙げられます。

ここでは、開発サイト要素 (Web パーツやその他のコード) の展開については説明しません。詳細については、「ソリューション パッケージを展開する (SharePoint Server 2010)」および「テンプレートを展開する (SharePoint Server 2010)」を参照してください。

作成サイト要素はさまざまな方法で展開できます。

  • コンテンツ展開は、サーバーの全体管理 Web サイトでコンテンツ展開ジョブを作成できるようにする組み込みシステムです。コンテンツ展開は、コンテンツの定期的な更新、および移動先サイト コレクションへのコンテンツの移動のための機能です。

  • オブジェクト モデルを使用して、一般的な作業を自動化するスクリプトの作成、展開を調整するエクスポートおよびインポートのカスタム プロパティの設定などのシナリオを処理します。オブジェクト モデルでは、データ移行シナリオの大部分を制御できます。

  • コンテンツ展開パッケージは、展開先のサイト コレクションへコンテンツを一括で移動または移行することを目的としています。コンテンツ展開パッケージは、Web サイトの作成サイト要素の一部または全部を収めることができる CAB ファイルです。切断された環境で展開できます。コンテンツ展開パッケージの作成には、Windows PowerShell コマンドレットを使用します。

注意

この記事では、ソリューション パッケージを使用してサーバー ファームのフロントエンド Web サーバーまたはアプリケーション サーバーに SharePoint Server 2010 の独自の開発物を展開する方法については解説しません。ソリューション パッケージを使用すると、切断された環境で加工物を展開でき、加工物と開発したサイト要素を同じパッケージで展開できます。詳細については、「ソリューション パッケージを展開する (SharePoint Server 2010)」を参照してください。

コンテンツ展開機能を使用する状況

SharePoint Server 2010 のコンテンツ展開機能は、ファーム間でのコンテンツの展開を自動化するシンプルで効果的な手段です。また、コンテンツを発行する前にステージングする場合は、コンテンツ展開を使用して、ステージング環境と運用環境の間で開発物とコンテンツを移動できます。

次のシナリオのどちらか一方または両方に該当する場合は、コンテンツ展開機能を使用して作成サイト要素を展開できます。

  • 接続環境 コンテンツ展開機能は、接続環境 (展開元ファームと展開先ファームがネットワークを介して通信できる環境) でのみ使用できます。

  • 自動化された環境 サーバー ファーム間での作成サイト要素の展開を自動化する場合、コンテンツ展開機能に備わる組み込みシステムを使用して、自動化された展開ジョブを設定できます。

コンテンツ展開機能を使用すると、作成したサイト要素のカスタマイズを、作成サイトと複数のターゲット サイトの間で展開できます。最善の方法は、作成サイトとステージング サイトまたはパイロット環境の間でカスタマイズを展開することです。運用環境と一致するネットワークおよびセキュリティの条件下ですべてのサイト要素が意図したとおりに機能することをテストして検証した場合は、作成サイトから運用環境にカスタマイズを展開できます。

注意

コンテンツ展開は常に一方向です。これは "単一マスター" システムであり、常にソース ファームまたはソース サイト コレクションから、展開先のファームまたはサイト コレクションに移動します。

実際の SharePoint Server 2010 サイトでコンテンツ展開を使用するための計画方法に関する一般的なガイダンスについては、「コンテンツ展開を計画する (SharePoint Server 2010)」を参照してください。

コンテンツ展開パッケージを使用する状況

次のようなシナリオでは、コンテンツ展開パッケージを使用して作成サイト要素を展開できます。

  • コンテンツの一括移行   コンテンツを展開先のサイトに 1 回のみ移動するには、コンテンツ展開パッケージを使用します。展開先のサイト コレクションでコンテンツを定期的に更新する計画の場合は、コンテンツ展開機能またはコンテンツ移行 API を使用します。

  • 非接続環境 ファームが接続されていない場合は、統合ファームへの非同期転送のためのコンテンツ展開パッケージを作成できます。

  • サンプル コンテンツ 作成サイト要素のカスタマイズ内容を、開発のために作成環境からサンプルとして使用する統合環境に展開する必要がある場合は、コンテンツ展開パッケージを使用することでこのプロセスを簡素化できます。

はじめに

同期に関する問題の発生を防ぐには、通常、作成サイト要素を展開する前に開発サイト要素を展開する必要があります。コンテンツ展開の前に、ファーム ソリューションおよび Web アプリケーション ソリューションを展開先ファームにインストールして展開する必要があります。また、ソース サーバーで使用されているすべての言語パックを展開先サーバーにインストールする必要があることに注意してください。必要な言語パックをインストールしないと、コンテンツの展開が失敗します。

この記事の手順を実行する前に、サイト要素のカスタマイズ内容の展開に関連する概念について十分に理解しておいてください。サイトおよびサイト コレクションの計画と設計の詳細については、「基本サイトの計画 (SharePoint Server 2010)」を参照してください。また、コンテンツ展開計画ワークシート (英語) (https://go.microsoft.com/fwlink/?linkid=167835&clcid=0x411) (英語) の Excel バージョンをダウンロードしてください。

コンテンツ展開ジョブを使用してコンテンツを展開する

コンテンツ展開ジョブを使用すると、ネットワークで接続されているファーム間でコンテンツを展開できます。コンテンツ展開ジョブは、多くのカスタマイズ環境において、ファーム間で定期的に実行されています。たとえば、コンテンツ展開ジョブを使用して、作成ファームで開発されたすべてのカスタマイズ内容を、統合ファームに毎晩展開することもできます。この機能を利用することにより、作成者と作成ファームの管理者は、カスタマイズ内容を手動で移行する必要がなくなります。また、カスタマイズ内容が適切な順序で展開されるように、開発ワークステーションから統合ファームにカスタマイズ内容を展開すると同時に、移行を行うことができます。

自動化されたコンテンツ展開を構成するには、以下の手順を実行します。

自動化されたコンテンツ展開を構成するには

  1. 展開先サーバー ファームで、最初のコンテンツ展開ジョブを受け取るための空のサイトを作成します。作成したサイトにはテンプレートを適用しないでください。SharePoint Server 2010 では、空白のテンプレートが適用されているサイトにはコンテンツを展開できません。

  2. 展開先ファームで、SharePoint サーバーの全体管理の [コンテンツ展開の設定] ページを使用して、送られてきた展開ジョブを受け入れ、送られてきた展開ジョブを管理するためにフロントエンド Web サーバーをインポート サーバーとして割り当てて、展開元と展開先のファームの間の接続で暗号化が必要かどうかを指定するようにファームを構成します。

  3. 展開元ファームの [コンテンツ展開の設定] ページを使用して、送信する展開ジョブを管理するように、Web サーバーをエクスポート サーバーとして割り当てます。

  4. 展開元ファームで、サーバーの全体管理の [コンテンツ展開用のパスおよびジョブの管理] ページを使用して、1 つ以上の展開パスを作成します。

  5. 展開元ファームの [コンテンツ展開用のパスおよびジョブの管理] ページを使用して、それぞれのパスに 1 つ以上の展開ジョブを作成します。

  6. 初期展開ジョブを実行して、展開先ファームでコンテンツを開始します。

  7. パスですべてのセキュリティ情報を展開しない場合は、展開元ファームのユーザー、SharePoint グループ、およびコンテンツとサイトのアクセス許可を、展開先ファームに複製する必要があります。

自動コンテンツ展開の計画方法の詳細については、「コンテンツ展開を計画する (SharePoint Server 2010)」を参照してください。

コンテンツ移行 API を使用してコンテンツを展開する

大半の展開シナリオは、サーバーの全体管理を使用して実現でき、スクリプトを必要としません。しかし、オブジェクト モデルを使用すると、一般的な作業を自動化するスクリプトの作成、SharePoint サーバーの全体管理サイトで展開を構成および設定できないエクスポートとインポートのカスタム プロパティの設定など、その他のシナリオを処理できます。また、展開元ファームと展開先ファームの接続が制限されている場合や使用できない場合にコンテンツ パッケージをエクスポートおよびインポートするコードを作成することもできます。

コンテンツの移行とコンテンツ移行 API の詳細については、「Content Migration Overview (英語)」(https://go.microsoft.com/fwlink/?linkid=187033&clcid=0x411) (英語) を参照してください。コンテンツ展開機能の概要、およびカスタム展開ソリューションの構築と実装に必要な背景とリソースの概要については、「Deploying Content Between Servers (英語)」(https://go.microsoft.com/fwlink/?linkid=181466&clcid=0x411) (英語) を参照してください。オブジェクト モデルを使用して、サイト コレクション間でコンテンツを展開するパスとジョブを作成する方法を示すコード例については、「How to: Deploy Content Between Servers (英語)」(https://go.microsoft.com/fwlink/?linkid=187034&clcid=0x411) (英語) を参照してください。コンテンツ移行 API を使用してコンテンツ パッケージをエクスポートおよびインポートする方法を示すコード サンプルと詳細については、「How to: Customize Deployment for Disconnected Scenarios」(https://go.microsoft.com/fwlink/?linkid=181076&clcid=0x411) (英語) を参照してください。

Windows PowerShell を使用してコンテンツ展開パッケージを作成する

Windows PowerShell を使用して、サイト全体 (サイト内のすべてのコンテンツを含む)、リスト、またはドキュメント ライブラリの作成サイト要素を含むコンテンツ展開パッケージを作成できます。

注意

展開先のサイト コレクションにコンテンツを一括移行する場合は、コンテンツ展開パッケージを使用します。展開元のサイト コレクションから展開先のサイト コレクションにコンテンツを定期的に移動する場合は、コンテンツ展開機能またはコンテンツ移行 API を使用します。

コンテンツ展開パッケージは、CMP (コンテンツ移行パッケージ) ファイルとして実装されています。展開元のサーバーからこのパッケージをエクスポートし、展開先のサーバーにインポートします。この方法によるコンテンツの展開は、接続環境と非接続環境の両方で使用できます。

ソフトウェア構成管理システムを使用している場合は、コンテンツ展開パッケージをエクスポートする手順を実行してから、ソフトウェア構成管理システムに応じた手順を使用してエクスポートしたファイルを保存します。

Windows PowerShell を使用してコンテンツ展開パッケージを作成するには

  1. 次の最小要件を満たしていることを確認します。Add-SPShellAdmin を参照してください。

  2. [スタート] メニューの [すべてのプログラム] をクリックします。

  3. [Microsoft SharePoint 2010 Products] をクリックします。

  4. [SharePoint 2010 管理シェル] をクリックします。

  5. Windows PowerShell コマンド プロンプトで、以下のように入力します。

    Export-SPWeb -Identity <URLname> -path <ExportFileName> -IncludeUserSecurity -IncludeVersions 4 -NoFileCompression
    

    ここで、

    • <URLname> はエクスポートするサイトです。このサイトが、配下のすべてのサブサイトと共に、コンテンツ展開パッケージに書き込まれます。

    • IncludeUserSecurity を指定すると、新しいサイトに元のサイトと同じアクセス許可が設定されます。

    • IncludeVersions は 4 に設定されており、すべてのバージョンを含めるよう指定しています。

    • NoFileCompression を指定すると、コンテンツ展開パッケージは、単一の CAB ファイルではなく、圧縮されていないフォルダーに出力されます。このようにすると、展開パッケージを別のサーバーに展開するのは難しくなりますが、個別のファイルの編集は簡単になります。

詳細については、「Export-SPWeb」を参照してください。

注意

コマンドライン管理タスクを実行するときには Windows PowerShell を使用することが推奨されています。Stsadm コマンドライン ツールは推奨されていませんが、製品の以前のバージョンとの互換性をサポートするために含まれています。

Windows PowerShell を使用してコンテンツ展開パッケージをインポートするには

  1. 次の最小要件を満たしていることを確認します。Add-SPShellAdmin を参照してください。

  2. [スタート] メニューの [すべてのプログラム] をクリックします。

  3. [Microsoft SharePoint 2010 Products] をクリックします。

  4. [SharePoint 2010 管理シェル] をクリックします。

  5. Windows PowerShell コマンド プロンプトで、以下のように入力します。

    Import-SPWeb -Identity <URLname> -path <ImportFileName> -IncludeUserSecurity
    

    ここで、

    • <URLname> はインポートされるサイトです。配下のすべてのサブサイトと共にインポートされます。

詳細については、「Import-SPWeb」を参照してください。

注意

コマンドライン管理タスクを実行するときには Windows PowerShell を使用することが推奨されています。Stsadm コマンドライン ツールは推奨されていませんが、製品の以前のバージョンとの互換性をサポートするために含まれています。