作成サイト要素のカスタマイズ内容を展開する
この記事の内容 :
コンテンツ展開機能を使用してコンテンツを展開する
コンテンツ展開パッケージを使用してコンテンツを展開する
ソリューション パッケージを使用してコンテンツを展開する
この記事では、Microsoft Office SharePoint Server 2007 を使用した作成サイト要素のカスタマイズ内容の展開について、展開の手順、一般的な考慮事項、カスタム コンテンツの展開に関連するベスト プラクティスなど、ガイダンスを提供します。
作成サイト要素とは、Office SharePoint Server 2007 をベースにした Web サイトを構成する Web ページ、画像、レイアウト ページ、カスケード スタイル シート、その他のリソースのことです。作成サイト要素には、次のものがあります。
デザイン要素 一般に、Microsoft Office SharePoint Designer 2007 などの設計ツールを使用して作成されるサイト要素です。これらのサイト要素は、サイトのコンテンツが表示されるフレームワークを構成します。デザイン要素の例として、マスタ ページやレイアウトが挙げられます。
Web コンテンツ 一般に、Web ブラウザやクライアント作成用プログラム (Office Word 2007 など) で直接作成されるサイト要素です。これらのサイト要素は、サイトのコンテンツを提供します。Web コンテンツの例として、Web ページや画像が挙げられます。
ここでは、開発サイト要素 (Web パーツやその他のコード) の展開については説明しません。詳細については、「開発サイト要素のカスタマイズ内容を展開する」を参照してください。作成サイト要素と開発サイト要素の違いに関する詳細については、「サイト要素の確認」を参照してください。
この記事を読む前に、サイト要素のカスタマイズ内容の展開に関連する概念について十分に理解しておいてください。詳細については、「サイトの設計と構築について」を参照してください。
注意
この記事の手順は、「カスタマイズ シナリオ」で説明されているトポロジに基づいています。必ずしもお使いの環境に適しているとは限りません。
この記事の手順を実行する際には、いくつかの異なる役割にわたって共同作業が必要になる場合があります。また、この記事では、いくつかのトポロジ層間でコンテンツを移行する際に、スケジュールされた展開ジョブを使用することを前提としています。詳細については、「開発チームの役割について」を参照してください。
注意
同期に関する問題の発生を防ぐには、多くの場合、作成サイト要素を展開する前に開発サイト要素を展開する必要があります。作成サイト要素と開発サイト要素の詳細については、「サイト要素の確認」を参照してください。また、展開元サーバーで使用されているすべての言語パックを展開先サーバーにインストールする必要もあります。これを行わないと、コンテンツの展開に失敗します。
次の表に、この記事で説明する展開方法の概要を示します。
方法 | メモ |
---|---|
コンテンツ展開 |
コンテンツ展開は、サーバーの全体管理 Web サイトでコンテンツ展開ジョブを作成できるようにする組み込みシステムです。 コンテンツ展開機能を使用すると、次の処理を実行できます。
次の目的でコンテンツ展開を使用することはできません。
|
コンテンツ展開パッケージ |
コンテンツ展開パッケージは、Web サイトの作成サイト要素の一部または全部を収めることができる CAB ファイルです。 コンテンツ展開パッケージを使用すると、作成サイト要素を非接続環境で展開できます。 コンテンツ展開パッケージを使用して開発サイト要素を展開することはできません。 |
ソリューション パッケージ |
ソリューション パッケージは、サーバー ファーム内の Web サーバーまたはアプリケーション サーバーに、Office SharePoint Server 2007 および Windows SharePoint Services 3.0 のカスタマイズした開発内容を提供する配布パッケージです。 ソリューション パッケージを使うと、次のことを行えます。
ソリューション パッケージでは、デザイン要素以外の作成サイト要素を展開することはできません。 |
次のセクションでは、表に挙げたそれぞれの展開方法について詳細に説明します。
コンテンツ展開機能を使用してコンテンツを展開する
コンテンツ展開機能とは
コンテンツ展開では、パスとジョブを使用して、コンテンツを展開元の Office SharePoint Server 2007 サイト コレクションから展開先のサイト コレクションにコピーします。
コンテンツ展開パスでは、次の情報を定義します。
コンテンツの展開元と展開先。
展開先サイト コレクションへのアクセス許可を指定する、認証と承認の情報。
コンテンツに関連付けられているユーザー名を展開するかどうかに関する情報。
コンテンツ展開ジョブでは、次の情報を定義します。
展開元サイト コレクションのどのサイトを展開するか。
ジョブを実行する頻度。
すべてのコンテンツを展開するか、変更されたコンテンツだけを展開するか。
ジョブが成功または失敗したときに電子メールを送信するかどうか。
成功および失敗の通知にどの電子メール アドレスを使用するか。
コンテンツ展開機能を使用する際、展開元のサイト コレクション全体をコピーすることも、サイトのサブセットをコピーすることもできます。どちらの場合も、既定ではコンテンツの増分展開が行われ、変更されたページと関連リソース (画像など) のみが展開されます。簡易展開機能では、作成者による 1 ページの展開がサポートされています。
注意
簡易展開機能を使用するには、あらかじめ展開元サイト コレクションと展開先サイト コレクションで Office SharePoint Server 発行インフラストラクチャ機能を有効にしておく必要があります。
コンテンツ展開では、展開元サイト コレクションのベース URL は、展開先サイト コレクションのベース URL と異なる場合があります。コンテンツ展開機能を使用すると、展開先で正しく機能するように、展開元コンテンツ内のリンクが修正されます。
コンテンツ展開機能によってコピーされるのは、コンテンツだけです。コンテンツとは、コピーされたページで使用される Web ページとリソースです。プログラム、アセンブリ、フィーチャー、構成情報 (Web.config ファイルなど) は展開できません。Web ページを展開するときに、そのページが依存するコンテンツ データベース内のアイテム (画像、スタイル シート、レイアウト ページなど) も展開されます。
コンテンツ展開では、コンテンツ アイテムの最新のメジャー バージョンとマイナー バージョンが展開されます。たとえば、バージョンが 2.7 の Web ページを展開する場合、ページの最新のメジャー バージョン (この例ではバージョン 2.0) と最新のマイナー バージョン (この例ではバージョン 2.7) が展開先サイトにコピーされます。
アイテムに発行スケジュールが設定されている場合、アイテムと共にスケジュール情報が展開されるので、展開先サイト コレクションでもスケジュールに従うことができます。たとえば、06 時 00 分に発行されるようにスケジュールされているアイテムを 03 時 00 分に展開した場合、展開先サイトのサイト ユーザーがコンテンツを閲覧できるのは、06 時 00 分以降になります。詳細については、「コンテンツ承認とスケジュールを計画する」を参照してください。
コンテンツ展開の詳細については、「コンテンツの展開を計画する」を参照してください。
コンテンツ展開トポロジの詳細については、「コンテンツ展開トポロジを設計する」を参照してください。
コンテンツ展開機能を使用する状況
Office SharePoint Server 2007 のコンテンツ展開機能は、ファーム間でのコンテンツの展開を自動化するのにシンプルで効果的な手段です。作成サイト要素のカスタマイズ内容を、ソフトウェア構成管理システムに格納する必要のある環境では、コンテンツ展開を使用すると、ソフトウェア構成管理システムと展開先ファームとの間でデザイン要素を移動するためのカスタム スクリプトを開発する必要がなくなります。
次の状況のどちらかまたは両方に該当する場合は、コンテンツ展開機能を使用して作成サイト要素を展開できます。
接続環境 コンテンツ展開機能は、接続環境 (展開元ファームと展開先ファームがネットワークを介して通信できる環境) でのみ使用できます。
自動化された環境 サーバー ファーム間での作成サイト要素の展開を自動化する場合、コンテンツ展開機能に備わる組み込みシステムを使用して、自動化された展開ジョブを設定できます。
「カスタマイズ シナリオ」の展開図に示すように、コンテンツ展開機能を使用すると、作成サイトとステージング サイト間で、あるいはステージング サイトとパイロット ファームまたは稼働ファーム間で、作成サイト要素のカスタマイズ内容を展開できます。
コンテンツ展開ジョブを使用してコンテンツを展開する
コンテンツ展開ジョブを使用すると、ネットワークで接続されているファーム間でコンテンツを展開できます。コンテンツ展開ジョブは、多くのカスタマイズ環境において、ファーム間で定期的に実行されています。たとえば、コンテンツ展開ジョブを使用して、作成ファームで開発されたすべてのカスタマイズ内容を、夜間に統合ファームに展開することもできます。この機能を利用することにより、作成者と作成ファームの管理者は、カスタマイズ内容を手動で移行する必要がなくなります。また、カスタマイズ内容が適切な順序で展開されるように、開発ワークステーションから統合ファームにカスタマイズ内容を展開すると同時に、移行を行うことができます。
自動化されたコンテンツ展開を構成するには、以下の手順を実行します。
自動化されたコンテンツ展開を構成する
展開先サーバー ファームで、初期展開ジョブを受け取るために、空のサイト テンプレートに基づいて空のサイト コレクションを作成します。
展開先ファームで、Office SharePoint Server 2007 サーバーの全体管理の [コンテンツ展開の設定] ページを使用して、送られてきた展開ジョブを受け入れるようにファームを構成し、送られてきた展開ジョブを管理するために Web サーバーをインポート サーバーとして割り当て、展開元ファームと展開先ファームとの接続で暗号化を要求するかどうかを指定します。
展開元ファームの [コンテンツ展開の設定] ページを使用して、送信する展開ジョブを管理するように、Web サーバーをエクスポート サーバーとして割り当てます。
展開元ファームで、サーバーの全体管理の [コンテンツ展開用のパスおよびジョブの管理] ページを使用して、1 つ以上の展開パスを作成します。
展開元ファームの [コンテンツ展開用のパスおよびジョブの管理] ページを使用して、それぞれのパスに 1 つ以上の展開ジョブを作成します。
初期展開ジョブを実行して、展開先ファームでコンテンツを開始します。
パスですべてのセキュリティ情報を展開しない場合は、展開元ファームのユーザー、SharePoint グループ、およびコンテンツとサイトのアクセス許可を、展開先ファームに複製する必要があります。
自動化されたコンテンツ展開の計画の詳細については、「コンテンツの展開を計画する」を参照してください。
コンテンツ展開パッケージを使用してコンテンツを展開する
コンテンツ展開パッケージとは
コンテンツ展開パッケージは CAB ファイルとして実装されます。このファイルは、既定では 10 MB のチャンクに分割され、展開元サーバー上の一時的な場所に収集されます。すべての CAB ファイルが作成され、展開元サーバー上の一時ディレクトリに移動された後、スケジュールされているコンテンツ展開ジョブが自動的に実行されるか、管理者がコンテンツ展開ジョブを開始します。すべての CAB ファイルがインポート (展開先) サーバーで受信されると、コンテンツ展開システムにより、展開されたコンテンツが展開先 Web サイトにコピーされます。
非接続環境 (展開元ファームと展開先ファームがネットワークで接続されていない環境) では、コンテンツ展開パッケージを使用してカスタマイズ内容をファーム間で移動できます。コンテンツ展開パッケージが作成され、展開先ファームの管理者に送信された後、管理者は次のセクションの手順を実行して、パッケージをファームにインポートすることができます。
コンテンツ展開パッケージを使用する状況
コンテンツ展開パッケージは、いくつかの方法で作成および展開できます。最も適切な方法を特定するには、展開元ファームと展開先ファームが非接続環境にあるかどうかなど、さまざまな要素について考慮する必要があります。
次のうち 1 つ以上の要因があてはまる場合は、コンテンツ展開パッケージを使用して作成サイト要素を展開できます。
非接続環境 ファームが接続されていない場合は、統合ファームへの非同期転送のためのコンテンツ展開パッケージを作成する必要があります。
厳密なソフトウェア構成管理 作成サイト要素のカスタマイズ内容が、ソフトウェア構成管理システムに保存される環境では、アーカイブ用のコンテンツ展開パッケージを簡単に作成できます。これにより、現在存在するすべての作成サイト要素のカスタマイズ内容を 1 つのファイルに保存できます。
サンプル コンテンツ 作成サイト要素のカスタマイズ内容を、開発のために作成環境から統合環境に展開する必要がある場合は、コンテンツ展開パッケージを使用することでこのプロセスを簡素化できます。
「カスタマイズ シナリオ」の展開図に示すように、コンテンツ展開パッケージを使用すると、作成クライアント ワークステーションと統合ファームとの間で、あるいはステージング サイトとパイロット ファームまたは稼働ファームとの間で、作成サイト要素のカスタマイズ内容を展開できます。
Stsadm コマンドライン ツールを使用してコンテンツ展開パッケージを作成する
Stsadm コマンドライン ツールを使用すると、サイト全体を含むコンテンツ展開パッケージ ファイルを作成できます。
注意
Stsadm コマンドライン ツールは、サイト全体のエクスポートにのみ使用できます。特定のサイト要素を指定してエクスポートすることはできません。
Web サイトのコンテンツ全体をエクスポートするこの方法は、一般に接続環境または非接続環境で使用されます。その手順はコマンド プロンプトで実行されるので、自動的に実行可能なバッチ スクリプトを非常に簡単に記述できます。
このコマンドでコンテンツ展開パッケージを作成したら、後の「Stsadm コマンドライン ツールを使用してコンテンツ展開パッケージをインポートする」の手順に従って、環境内の別のファームに展開できます。
重要
Stsadm コマンドライン ツールは、SharePoint 製品とテクノロジがインストールされているドライブの %COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\12\Bin というパスにあります。Stsadm コマンドライン ツールを使用するには、ローカル コンピュータの Administrators グループのメンバである必要があります。
コンテンツ展開パッケージを作成するには、展開元サーバーのコマンド プロンプトで、次のコマンドを実行します。
cd %COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\12\bin
stsadm –o export –url < URL 名 > -filename < エクスポート ファイル名 > –includeusersecurity –versions 4 [-nofilecompression]
このコマンドにより、url パラメータで指定したサイト (およびその下位のサブサイト) が、指定した名前のファイルにエクスポートされます。
-includeusersecurity パラメータによって、新しいサイトに元のサイトと同じアクセス許可が設定されます。-versions パラメータ値を 4 に設定することで、すべてのバージョンが含まれるようになります。
-nofilecompression パラメータを使用して、コンテンツ移行パッケージを、単一の CAB ファイルではなく圧縮されていないフォルダに出力することもできます。この場合は、移行パッケージを別のサーバーに展開するのが難しくなりますが、個別のファイルの編集がはるかに簡単になります。
詳細については、「Export : stsadm 操作 (Office SharePoint Server)」を参照してください。
コンテンツ展開パッケージをソフトウェア構成管理システムに保存する
コンテンツ展開パッケージをソフトウェア構成管理システムに保存するには、前のセクションの手順を実行してから、ファイルを保存するソフトウェア構成管理システムに応じた手順を実行してください。
Stsadm コマンドライン ツールを使用してコンテンツ展開パッケージをインポートする
以下の手順を実行すると、前のセクションで作成したコンテンツ展開パッケージをインポートできます。この手順は、接続環境または非接続環境で使用できます。
重要
Stsadm コマンドライン ツールは、SharePoint 製品とテクノロジがインストールされているドライブの %COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\12\Bin というパスにあります。Stsadm コマンドライン ツールを使用するには、ローカル コンピュータの Administrators グループのメンバである必要があります。
コンテンツ展開パッケージをインポートするには、展開先サーバーのコマンド プロンプトで、次のコマンドを実行します。
cd %COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\12\bin
stsadm –o import –url < URL 名 > -filename < インポート ファイル名 > –includeusersecurity
このコマンドにより、指定したコンテンツ展開パッケージが、url パラメータで指定したサイトにインポートされます。
詳細については、「Import : Stsadm 操作 (Office SharePoint Server)」を参照してください。
ソリューション パッケージを使用してコンテンツを展開する
ソリューション パッケージとは
ソリューション パッケージは、サーバー ファーム内の Web サーバーまたはアプリケーション サーバーに、Office SharePoint Server 2007 および Windows SharePoint Services 3.0 のカスタマイズした開発内容を提供する配布パッケージです。ソリューション パッケージは、非接続環境でデザイン要素を展開したり、ソフトウェア構成管理システムにデザイン要素を保存したりする際にも役立ちます。
ソリューションにはさまざまなサイト要素をパッケージできますが、パッケージできないサイト要素もあります。ソリューションにパッケージできるコンポーネントは、次のとおりです。
.NET Framework アセンブリ。
展開ファイル (リソース ファイル、画像、その他のヘルパー ファイルなど)。
サイト、リスト、ライブラリ、フィールド、およびコンテンツ タイプのテンプレートと定義。これらの定義ファイルは、CAML ベースの XML ファイル形式です。
Web サーバー レベルで実行する必要のある構成ファイル。たとえば、Web パーツ登録用の Web.config ファイルなどがあります。
ソリューション パッケージは、Web ページ、埋め込み画像など、デザイン要素以外の作成サイト要素のエクスポートには使用できません。
ソリューション パッケージを使用する状況
「開発サイト要素のカスタマイズ内容を展開する」で説明されているように、ソリューション パッケージを使用すると、開発サイト要素を提供できます。また、この記事の前の部分で説明したとおり、ソリューション パッケージはデザイン要素の展開にも使用できます。ソリューション パッケージは、ファイル名拡張子が .wsp の CAB ファイルとマニフェスト ファイルです。ソリューション パッケージは、Makecab.exe などのユーティリティを使用して手動で作成することも、Solution Generator を使用して作成することもできます。Solution Generator は、「Windows SharePoint Services 3.0 Tools: Visual Studio 2005 Extensions (英語)」(https://go.microsoft.com/fwlink/?linkid=107267&clcid=0x411) から入手できるスタンドアロン アプリケーションです。
次のうち 1 つ以上の状況に該当する場合は、ソリューション パッケージを使用して作成サイト要素を展開できます。
デザイン要素の展開 デザイン要素を開発サイト要素のカスタマイズ内容と共に同じパッケージに含めるのが望ましい場合や、有効および無効にできる機能の一部としてデザイン要素を展開する場合に、ソリューション パッケージを使用してデザイン要素を展開できます。
デザイン要素と開発サイト要素の同時提供 デザイン要素と開発サイト要素の両方を 1 つの展開パッケージで展開する場合は、ソリューション パッケージを使用します。
非接続環境 ファームが接続されていない場合は、統合ファームへの非同期転送のためにソリューション パッケージを作成する必要があります。
スクリプトによる展開 スクリプトを記述してデザイン要素の展開プロセスを自動化する場合は、ソリューション パッケージを使用できます。
「カスタマイズ シナリオ」の展開図に示すように、ソリューション パッケージを使用すると、統合ファームと作成ファーム、パイロット ファーム、または稼働ファームの間で、作成サイト要素のカスタマイズ内容を展開できます。
ソリューション パッケージは、Web コンテンツ (Web ページや Web ページによって呼び出される画像など) の展開には使用できません。非接続環境で Web コンテンツを展開する必要がある場合は、この記事の「コンテンツ展開パッケージを使用してコンテンツを展開する」で説明したように、コンテンツ展開パッケージを使用してください。
ソリューション パッケージの作成と展開の詳細については、「開発サイト要素のカスタマイズ内容を展開する」の記事の「ソリューション パッケージを使用して開発サイト要素を展開する」セクションを参照してください。
このブックをダウンロードする
このトピックは、参照および印刷しやすいように、次のダウンロード可能なブックに収録されています。
「Office SharePoint Server 2007 のダウンロード可能なブック」で、入手可能なブックの詳細な一覧を参照してください。
関連項目
概念
カスタマイズを展開する
開発サイト要素のカスタマイズ内容を展開する
ソリューション パッケージのコンポーネント
その他のリソース
[方法] Web サイトを別の場所に移行する
Deep Dive into the SharePoint content deployment and Migration API (英語)