legacy-knowledge-base
公開されました Jul. 2, 2025

ステージング サイトが削除された後、ライブ サイトは編集できません。

投稿者

Sebastian Madaras

knowledge-article-header-disclaimer-how-to

knowledge-article-header-disclaimer

legacy-article

learn-legacy-article-disclaimer-text

問題

  • リモート ステージング サイトが削除されたか正しく無効にされていない場合、ライブ サイトのデフォルト機能を回復する方法は?

Environment

  • Liferay DXP 7.2

解決策

  • groovy-script を実行することで、Live サイトのデフォルト機能を有効にすることができます。
  • 先に進む前に、データベースのバックアップを作成してください。 解決によりデータベースが変更されるため、セキュリティ上の理由から保存する必要があります。
  1. 別々のデータベースで 2 つのバニラ Liferay 7.2 バンドルを開始します。
  2. bundle1 に「Staging」というサイトを作成し、bundle2 に「Live」というサイトを作成します。 これらを Remote Staging 経由で接続します。
  3. bundle1 の削除 -> 'Staging'.
  4. bundle2 -> 'Live'に移動します。 ここで、コントロール パネル --> コンテンツ内で、新しい Web コンテンツ記事を追加できないことがわかります。 これは、'Live' サイトが 'Staging' サイトから無効にされていないためです。
  5. 完全に確認するために、bundle2 からデータベースを確認してください。 'Live' サイト --> 'group_' テーブルで、'remoteStagingGroupCout' 列を確認します。 値が「0」の場合、この記事の解決策は役に立ちません。 値が「1」の場合は、次の手順に進んでください。
  6. コントロール パネル --> 構成 --> サーバー管理 --> スクリプトに移動します。 ここで、以下のコードをコピーして貼り付けて実行します。
import com.liferay.portal.kernel.service.GroupLocalServiceUtil;
long liveGroupId = [SiteID];
try {
GroupLocalServiceUtil.disableStaging(liveGroupId);
println("Staging disabled.");
}
catch(Exception e) {
println("Could not disable staging.");
}

- スクリプトを実際に実行するには、'[SiteID]' を実際の SiteID 値に置き換えてください。

- これにより、「remoteStagingGroupCout」が値「0」に設定されます。これは、特定のサイトが Remonte Staging を介して他のサイトに接続されていないことを意味します。

追加情報

  • 上記のアプローチは、Liferay Portal 6.2、Liferay DXP 7.0、および Liferay DXP 7.1 で機能します。 ただし、パッケージ名 (com.liferay.portal.kernel.service.GroupLocalServiceUtil) が Liferay のバージョンごとに変更されるため、スクリプトに小さな変更が必要になる場合があります。 ご不明な点がございましたら、カスタマーサポートチームまでお気軽にお問い合わせください。

did-this-article-resolve-your-issue

legacy-knowledge-base