2011-07-13 62 views
2

我使用的是WordPress,我希望WordPress創建的文件具有創建它們的文件的用戶,而不是Web服務器運行的用戶。例如,我的WordPress文件和目錄由www-data組中的philip擁有。當WordPress創建文件時,我希望文件的所有者爲philip而不是www-data我可以使用setuid或sticky來創建由某個用戶創建的PHP文件嗎?

這可能嗎?我的懷疑是它可以通過setuidsticky bit實現,但我不知道如何應用它。

回答

1

不是沒有很多額外的努力。從你所描述的,這聽起來像你可能使用mod_php或類似的東西運行PHP;作爲Web服務器用戶,它將始終在Web服務器中運行。 setuid/setgid僅在有新的進程正在執行時才能工作,但在此情況並非如此。

你可以通過使用CGI或FastCGI(它可以讓你運行所有的PHP腳本作爲你自己的用戶)來運行PHP,但這可能是你不想做的很多額外的設置。

+0

謝謝duskwuff,是的,我真的不想使用FastCGI。我想我必須得到我得到的東西。 –

0

如果您不想讓該組訪問,可以使用粘滯位設置g-rwxsetgid(您要求更改組,而不是用戶)的問題是,運行該命令的用戶必須具有分配該組的權限。如果您不希望Web服務器(即www-data)有權訪問,那麼您可能不希望將gid更改爲其有權訪問的任何組。否則,你需要擁有其他一些具有其他權限的進程,並通過cron或其他調度程序對Web服務器進行更改。

相關問題