![](/img/trans.png)
[英]Permission denied with user ubuntu but not with user www-data on .csv file
[英]Permission issue with Imagick and user www-data
我在Symfony2中有一個應用程序構建。 該應用程序在三個Docker容器中運行:
所有文件均由root擁有,並且apache和nginx服務器在用戶www-data下運行。 該應用程序運行良好。
僅php conjobs(在主機上的root用戶下運行)生成新映像並將其存儲在服務器上。 首先,它使用以下代碼創建一個權限為0755的目錄:
@mkdir('path/..', 0755, true);
該目錄正確地具有這些權限。 然后,它使用以下代碼在該目錄中存儲圖像:
$image = new \Imagick( 'path/filename.jpg' );
$Width = $image->getImageWidth();
$Height = $image->getImageHeight();
if($Width > 1024 || $Height > 768) {
$image->resizeImage($imgWith, $imgHeight, \Imagick::FILTER_LANCZOS, 0.9);
$image->writeImage('path/new_filename.jpg');
}
這些圖像僅與0600一起存儲。因此,用戶www-data無法在應用程序中讀取/顯示圖像。 如果使用以下命令手動更改權限: chmod -R 0755 dir
則可以正確顯示圖像。
關於如何以正確的前提直接存儲圖像有什么建議嗎?
你可以使用PHP chmod嗎
chmod('path / new_filename.jpg',0755);
創建文件后?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.