0
我無法使用ACL,因此我嘗試將umask(0000)添加到我的VPS中的應用程序/控制檯和web/app.php,但是應用程序/緩存再次轉向0755和所有者組myFTPUser
當我清除緩存,所以直到我再次更改權限,以0775和組所有者www-data
我的網站拋出一個錯誤:清除緩存時使用umask設置權限
php app/console cache:clear --env=prod --no-debug
chown -R myFTPUser:www-data app/cache/
find app/cache/ -type d | xargs chmod -R 0775
find app/cache/* -type f | xargs chmod -R 0664
唯一的辦法我已經找到了在清除緩存之前將用戶更改爲Apache用戶,而不更改umask
:
su www-data
php app/console cache:clear --env=prod --no-debug
現在它的工作原理沒有做任何事情。但是,這是正確的路嗎?而且,爲什麼Symfony2文檔沒有闡明這一點?
*在生產環境中,您很可能只需切換到apache用戶。*從Apache用戶運行此命令並將所有者設置爲Apache用戶有什麼區別?我猜這沒有什麼區別。 – Manolo
這不是一個區別,這些都是這樣做的要求。您希望擁有由Apache用戶擁有的目錄,以便您的應用程序正常運行,並且您希望從Apache用戶運行命令,因爲它們只能以這種方式工作。至少我是這樣處理這個問題的。 – Seer