打开 Sitecore 媒体库时出现 404
Getting 404 when opening Sitecore Media Library
与问题相关
Getting Sitecore 404 for physical files
我的任务是专门删除媒体文件夹上的波浪号前缀(也在问题的答案之一中提到)。
之后像上面的相关问题一样打开媒体库时出现 404。所以我将 /sitecore/shell/Applications/Media/MediaShop AND /sitecore/shell/Applications/Media/Media Folder.aspx 添加到 web.config 中的 IgnoreUrlPrefix 设置
这解决了问题,但我不确定这是如何解决问题的,以及为什么删除媒体文件夹上的波浪号会导致媒体库页面出现 404。
有人可以解释一下吗?
如果您有在使用波浪号前缀时创建的现有内容,那么特别是富文本字段中的现有内容仍然使用波浪号前缀。您可以通过查看字段的 Edit HTML
或 Raw Values
进行检查,格式为:
<img src="-/media/123A4B6789012CAB34C567AB79CBD084.ashx?h=100%25&w=100%25" style="height: 100%; width:100%;">
为了更改波浪号并仍然支持您需要补充媒体配置更改的旧内容,请修补对以下部分的更改:
<?xml version="1.0"?>
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
<sitecore>
<settings>
<!-- Extensions of media files should match it's type -->
<setting name="Media.RequestExtension">
<patch:attribute name="value"></patch:attribute>
</setting>
<!-- Change the media prefix from the default -->
<setting name="Media.MediaLinkPrefix">
<patch:attribute name="value">-/media</patch:attribute>
</setting>
</settings>
<!-- Media handler prefixes -->
<customHandlers>
<handler patch:before="*[@trigger='~/media/']" trigger="-/media/" handler="sitecore_media.ashx" />
</customHandlers>
<!-- Support Media Prefixes -->
<mediaLibrary>
<mediaPrefixes>
<prefix value="-/media"/>
<prefix value="~/media"/>
</mediaPrefixes>
</mediaLibrary>
</sitecore>
</configuration>
更改前缀以匹配您需要的任何内容。
在任何情况下,link 都会在前端站点上正确呈现。请注意,您使用了 /media
,如果创建了一段名为 media*
的内容,媒体处理程序将尝试处理它,即使它是内容,例如mysite.com/media/news
或 mysite.com/news/latest/media/
。您可能想要添加一些验证以防止创建此类项目。
与问题相关 Getting Sitecore 404 for physical files 我的任务是专门删除媒体文件夹上的波浪号前缀(也在问题的答案之一中提到)。 之后像上面的相关问题一样打开媒体库时出现 404。所以我将 /sitecore/shell/Applications/Media/MediaShop AND /sitecore/shell/Applications/Media/Media Folder.aspx 添加到 web.config 中的 IgnoreUrlPrefix 设置 这解决了问题,但我不确定这是如何解决问题的,以及为什么删除媒体文件夹上的波浪号会导致媒体库页面出现 404。 有人可以解释一下吗?
如果您有在使用波浪号前缀时创建的现有内容,那么特别是富文本字段中的现有内容仍然使用波浪号前缀。您可以通过查看字段的 Edit HTML
或 Raw Values
进行检查,格式为:
<img src="-/media/123A4B6789012CAB34C567AB79CBD084.ashx?h=100%25&w=100%25" style="height: 100%; width:100%;">
为了更改波浪号并仍然支持您需要补充媒体配置更改的旧内容,请修补对以下部分的更改:
<?xml version="1.0"?>
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
<sitecore>
<settings>
<!-- Extensions of media files should match it's type -->
<setting name="Media.RequestExtension">
<patch:attribute name="value"></patch:attribute>
</setting>
<!-- Change the media prefix from the default -->
<setting name="Media.MediaLinkPrefix">
<patch:attribute name="value">-/media</patch:attribute>
</setting>
</settings>
<!-- Media handler prefixes -->
<customHandlers>
<handler patch:before="*[@trigger='~/media/']" trigger="-/media/" handler="sitecore_media.ashx" />
</customHandlers>
<!-- Support Media Prefixes -->
<mediaLibrary>
<mediaPrefixes>
<prefix value="-/media"/>
<prefix value="~/media"/>
</mediaPrefixes>
</mediaLibrary>
</sitecore>
</configuration>
更改前缀以匹配您需要的任何内容。
在任何情况下,link 都会在前端站点上正确呈现。请注意,您使用了 /media
,如果创建了一段名为 media*
的内容,媒体处理程序将尝试处理它,即使它是内容,例如mysite.com/media/news
或 mysite.com/news/latest/media/
。您可能想要添加一些验证以防止创建此类项目。