1

我将 sitecore 从 7.0 升级到 8.1。我遇到的唯一真正的问题是媒体部分已损坏,并且网站本身的图像似乎已损坏。

奇怪的部分,我可以上传和下载媒体项目。它在chrome和firefox中都被破坏了。

谢谢![在此处输入图像描述] 1 更新

 <encodeNameReplacements>
      <replace mode="on" find="&amp;" replaceWith=",-a-," />
      <replace mode="on" find="?" replaceWith=",-q-," />
      <replace mode="on" find="/" replaceWith=",-s-," />
      <replace mode="on" find="*" replaceWith=",-w-," />
      <replace mode="on" find="." replaceWith=",-d-," />
      <replace mode="on" find=":" replaceWith=",-c-," />
    </encodeNameReplacements>
4

4 回答 4

1

它看起来像是Sitecore 媒体保护的问题(首次包含在 Sitecore 7.5 中)。

您可以在 Adam 博客文章“不要关闭 Sitecore 媒体请求保护并使用 ImageGuard 保护旧版 Sitecore”中阅读更多相关信息。

但我不知道为什么不将哈希添加到 Sitecore 中的链接中。shell对于 Sitecore 内部站点(例如、login等),应该禁用它。

尝试通过更改文件中的配置来禁用媒体保护,/App_config/Include/Sitecore.Media.RequestProtection.config看看这是否是您的问题的原因。

于 2015-10-27T16:04:34.987 回答
1

您缺少替代品:

<replace mode="on" find=" " replaceWith="-" />

如果您在媒体项目名称中使用空格,则可能会导致图像请求出现问题。将其添加到您的部分

要查看的另一件事是您的 CustomHandler 部分是否是这样的:

<customHandlers>
   <handler trigger="-/media/" handler="sitecore_media.ashx" />
   <handler trigger="~/media/" handler="sitecore_media.ashx" />
   <handler trigger="~/api/" handler="sitecore_api.ashx" />
   <handler trigger="~/xaml/" handler="sitecore_xaml.ashx" />
   <handler trigger="~/icon/" handler="sitecore_icon.ashx" />
   <handler trigger="~/feed/" handler="sitecore_feed.ashx" />
</customHandlers>

这与 Sitecore Upgrade 8.1 IR 指定的“配置文件更改”相同

于 2016-12-01T17:27:36.297 回答
1

解决它。事实证明,sitecore 的配置方式在 7-8.1 之间发生了很大变化。通过添加

 <sitecore configSource="App_Config\Sitecore.config" />

并删除旧部分解决了问题。

于 2015-10-29T12:23:21.537 回答
0

8.1 中的一项新变化是将默认前缀从“~”更改为“-”。这可能与此前缀更改有关。如果您获取获得 404 的 URL 并将 ~ 替换为 -,媒体 URL 是否有效?

于 2015-10-28T12:26:40.600 回答