2017-04-05 214 views
3

我正在編寫WebDAV服務器並遇到以下問題。 Mac OS X客戶端(Finder,Mac版Microsoft Office)會生成太多不同的請求。我曾經與微軟的Word同樣的問題適用於Windows,但設置custom headers後:儘量減少Mac上WebDAV請求的數量

Ms-Author-Via: DAV 

使用更多數量有限的請求Microsoft Word中開始。這裏的 Microsoft Word中編輯會話的外觀在Windows(和Windows或Linux用的LibreOffice):

PROPFIND 
GET 
LOCK (windows only) 
PUT 
UNLOCK (windows only) 
PROPFIND (linux only) 

的Mac OS Finder和Mac版Office但是產生大量的額外請求,即:

  • 代臨時文件
  • 生成臨時文件夾的
  • 移動起來

是否有一些標題組合可以減少Mac OS X中的多個請求?

+0

我認爲[this](https://apple.stackexchange.com/questions/14980/why-are-dot-underscore-files-created-and-how-can-i-avoid-them)將是對你感興趣。可悲的是,它看起來不太好。 – DaSourcerer

+0

@DaSourcerer是的,擺脫點和下劃線文件也會很好。 – rfg

回答

2

經過一番研究,可悲的看起來很像這樣超出了某些HTTP標頭的權力。在saber DAV文檔中顯示的this owncloud issuethis document也是一個有點已知的問題。 Apple's solution這是通過下面的命令完全禁用創建臨時文件:

defaults write com.apple.desktopservices DSDontWriteNetworkStores true 

然而,這聽起來像你將不得不滿足衆多客戶的需求,你的控制,這使得這個不切實際之外。 Owncloud通過mocking successfull LOCK/UNLOCKs找到了解決方案,將這些請求轉化爲NOP。首先,一個不太微妙的方法是forcefully prevent creation of these files。就個人而言,我認爲Owncloud的方法結合.metadata_never_index file是最有希望的,並且基本上沒有不希望的副作用。

+0

.metadata_never_index文件可防止創建.DS_Store文件,但不會阻止爲office文檔創建._ 文件。謝謝。 – rfg

+0

@rfg that [可以關閉](https://serverfault.com/a/457769),但很難通過WebDAV/HTTP的方式解決。您可以阻止創建這些文件,但這可能會導致實際文件呈現爲只讀狀態(從Office的角度來看)。 – DaSourcerer