Umbraco媒体文件夹的奇怪行为

时间:2013-08-09 15:09:28

标签: asp.net file-upload filesystems umbraco

我在使用Umbraco网站时遇到了一些麻烦。有时某些媒体文件会消失。 节点仍然存在,但实际的“物理”文件已经消失。 此外,媒体文件所在的文件夹不再存在。

CMS的用户无法登录服务器,因此他们无法意外删除自己的文件。只有我和我的同事才能访问(除非必要,否则我们不会登录服务器)

我刚检查了磁盘空间,所有可用磁盘上都有几个演出。

我们前一段时间对媒体文件夹进行了迁移,所以我们认为它可能与它有关。我们已经分析了整个Media文件夹的文件系统备份,这些项目也不存在,所以我们可以排除文件系统出现问题的可能性。

我们使用的版本是:Umbraco v 4.7.1.1(汇编版本:1.0.4868.25172)

3 个答案:

答案 0 :(得分:2)

如果使用上载属性类型克隆带有媒体文件的内容节点,则两个节点都将指向同一媒体元素。如果在一个节点上替换或删除该文件,它将删除该物理文件。原始节点仍将具有对已删除文件的引用。这使得看起来好像鬼正在删除图像,但是当您发布更改时,Umbraco 4会删除该文件。

解决此问题的最佳方法是将属性从类型上传转换为Media Picker。

我在umbraco v4.5周围的网站遇到了这个问题。我从未在Umbraco 6和7上遇到过这个问题。但是,在这些系统上,我使用媒体选择器而不是上传所有类似媒体的元素。

答案 1 :(得分:0)

我知道Umbraco 4.7.x删除自己的媒体时没有任何问题。可以远程执行,但这会删除节点以及物理文件。

唯一的原因是看起来最不可能的原因,那就是有人意外删除了它们。我发现在部署完成后偶尔会发生这种情况。有人用暂存环境中的媒体文件夹替换媒体文件夹。

如果文件是通过RDP连接复制的,我也看到了一个问题,正在复制的文件没有完全复制,并且在这个过程中有些文件实际上从目标文件夹中消失了。

但无论如何,我会检查你的内部进程,可能会将媒体文件夹移动到虚拟目录,以避免被覆盖的可能性。

答案 2 :(得分:0)

有一种情况可能会删除媒体文件,即在文档类型上使用Upload数据类型时。

之前在我管理的系统上发生的事情是编辑器复制了一个页面,其中包含先前上传的图像,但从未更新过图像,与上传字段的值保留相同的路径。

在这种情况下,您将有2个已发布的页面具有相同路径的字段。

现在,如果一位编辑决定删除该页面,则媒体文件也会被删除。 这将使复制的页面与图像断开链接并丢失图像。