我注意到在服务器访问日志中从未见过的一系列行在同一秒钟内连续运行:

PROPFIND /images/flag.jpg HTTP/1.1  405 493 265    511    - LibreOffice
HEAD /images/flag.jpg HTTP/1.1      200 164 -      229    - LibreOffice
GET /images/flag.jpg HTTP/1.1       200 186 338166 338395 - LibreOffice


似乎从网站复制图像到LibreOffice文档将导致触发这些查询。我发现在Microsoft网站上提到了PROPFIND,但仍然不了解它的用法,为什么不只使用一个GET?

#1 楼

来自Wikipedia:

Web分布式创作和版本控制(WebDAV)是超文本传输​​协议(HTTP)的扩展,可促进用户之间在编辑和管理存储在万维网服务器上的文档和文件之间的协作。 br />
PROPFIND —用于从Web资源检索以XML存储的属性。它也被重载以允许人们检索远程系统的集合结构(也称为目录层次结构)。


GET实际上会检索资源。 HEAD与GET相似,只是不返回消息正文。即,它获取文件头信息而不是整个资源。

PROPFIND与HEAD的不同之处在于,存储为XML的属性数据在(消息包的)消息正文中返回,而不是在消息正文中返回尝试返回整个资源。与Microsoft和其他公司使用的专有格式相比,OpenOffice和Libre文档包含XML。

将Libre与从您的网站链接的图像一起使用很可能会触发这种情况。

评论


您能否详细说明PROPFIND应该从HTTP请求PROPFIND /images/flag.jpg中摆脱出来的“属性”和“结构”?

–问题溢出
2014年8月8日在6:03

我不知道。抱歉。显然,JPG文件是二进制格式。我不建议您的图像文件中包含XML。但是,如果PROPFIND失败,则返回404。无论文件类型如何,LibreOffice都可能全面测试XML标头信息的资源。

– closetnoc
2014年8月8日在6:12

测试是否是LibreOffice的一种方法是使用您网站上的资源(最好是图像)创建一个新的简单文件,该资源是新的并且具有唯一的名称,这样,如果您收到对该文件的请求,就知道它的来源从。然后,您知道这些请求不是恶意的。否则,请检查IP(或域名)以确保它不在您的网络或您认识的人之内。如果请求来自未知位置,请阻止IP地址(或域名),然后查看谁抱怨。那是SA的老把戏。

– closetnoc
2014年8月8日在6:19