Apache-2.2

Mac OSX 雪豹 FTP

  • August 12, 2011

所以這就是問題所在。我的一個客戶使用 Mac OSX Snow Leopard 作為他的 Web 伺服器。他有多個客戶和站點等。他還有多個訪問系統的設計師。

他有一個使用者,他已鎖定到某些目錄(對於他只工作的網站)。當使用者上傳他的文件時,我的客戶端必須進入根目錄以將所有者設置為 _www,以便 Apache 有權執行這些文件。

他想知道的是無需不斷地進入使用者後面以傳播文件的權限。在 Windows 中,他只是毫無問題地使用 Filezilla,因為使用者沒有集成到作業系統中。

任何想法如何做到這一點?

將目錄的組權限設置為SGID( chmod g+s dirname),每個新創建的文件或子目錄的組將被繼承為_www。

但是您必須對每個現有的子目錄執行此操作,因為 SGID 位不會傳播到現有的子目錄。

chgrp -R _www path/to/userdir 
find /path/to/userdir -type d -print0 | xargs -0 chmod g+s

我沒有方便驗證的mac系統,但是…

在 Linux 中,我會在目錄上使用 SGID 位,並將目錄組設置為 Apache 執行所在的組。在該目錄中創建的所有文件都會將組自動設置為目錄組,因此 Apache 可以讀取。不涉及更改權限。

引用自:https://serverfault.com/questions/300570