ページ エディターでRTEからの内部リンクを使用したときに、パブリッシュされるURLが相対URLではなく絶対URLになる


解説

互換モードで実行されているIE8/IE9/IE10でページ エディターを使用している場合、リッチ テキスト フィールドからの内部リンクのURLに、現在のサイトのホスト名が追加され、パブリッシュされるURLが相対URLではなく絶対URLになる可能性があります。この挙動は、様々なマルチ サイト環境で問題を引き起こす可能性があります。

解決策

回避策として、以下のパブリッシュ リプレーサーをWeb.configに追加します。これは、パブリッシュ操作中にホスト名を指定されているリンクから除去するものです。

<replacers>
<replacer mode="on" id="publish" type="Sitecore.Text.Replacer, Sitecore.Kernel" singleInstance="true">
  <param desc="name">$(id)</param>
    <replacements hint="raw:AddReplacement">
     <simple find="http://myHostname/~/link.aspx" replaceWith="~/link.aspx" ignoreCase="false" forPublish="true"/>
    <simple find="http://myHostname/~/media" replaceWith="~/media" ignoreCase="false" forPublish="true"/>
</replacements>
</replacer>
</replacers>

ハイライトされている「myHostname」の文字列の代わりに、オーサリング(コンテンツ編集)サーバーにアクセスするのに使用されている実際のホスト名を入力してください。
貴社のオーサリング サーバーが複数のホスト名からアクセスされている場合は、ノードを複数追加しても問題ありません。

以下の記事に、本事象向けの他の代替回避策が記載されておりますので、合わせてご参照ください。
http://sitecoregadgets.blogspot.com/2011/06/ensure-valid-sitecore-internal-links-in.html