0

Edgecast CDN を使用できるようにするには、サイトが 6.5 リビジョン 111230 から 120427 にアップグレードされる前に、適切に機能するカスタム メディア プロバイダーを作成する必要がありました。アップグレード後、Web サイトに画像が表示されなくなりました。コードをデバッグしたところ、考えられる原因が見つかりました。アップグレードには、次の修正が含まれていました -

デフォルトでは、メディア URL は、現在のページに対してではなく、サイト ルート (/~/media/images/picture.ashx や /virtualFolder/~/media/picture.ashx など) に対して相対的に生成されるようになりました。このような URL は SEO に適していると見なされ、キャッシュも改善されます。(346213、332285)

これにより、メディア URL の先頭に先頭のスラッシュ「/」が追加されます。そのため、URL は「//mediaserver/abc.jpg」として生成されません。「MediaUrlOptions.VirtualFolder」はデフォルトで「/」に設定されています。これが問題であることと、コードでこれをオーバーライドできるかどうかを確認したいのですが、代わりに構成ファイルからこれを制御できるかどうかを確認したいと思いますこれが問題ではない場合、どうすればこの問題を解決できますか?

4

1 に答える 1

1

ここで答えを提供するために:

Media.MediaLinkPrefix 設定のスラッシュを削除します。これは、Sitecore が自動的に追加するためです。 <setting name="Media.MediaLinkPrefix" value="/mediaserver" />

次のものと同様に: <handler trigger="/mediaserver/" handler="sitecore_media.ashx" />

また、バージョン 6.5.0 rev から Media API の改善が行われました。120427. SDN のリリース ノートの参照番号 312358 に従って、web.config 設定を使用して MediaProvider クラスをエレガントにオーバーライドできるようになりました: http://sdn.sitecore.net/Products/Sitecore%20V5/Sitecore%20CMS%206 /ReleaseNotes/ChangeLog.aspx

于 2012-06-05T19:22:27.333 に答える