将laravel createDirectory所有者从根用户更改为其他用户
在我的ubuntu服务器上,我有一个将laravel createDirectory所有者从根用户更改为其他用户,laravel,ubuntu,server,Laravel,Ubuntu,Server,在我的ubuntu服务器上,我有一个web3用户,在我的网站上有laravel 我有下面的代码来创建目录 Storage::disk('products')->makeDirectory($media\u dist,0755,true) 目录的所有者是web3,但当它创建目录时,它有一个根用户 我想知道它是如何发生的,并且有一个root用户 我如何更改它以创建拥有web3的目录?导航到Larvel目录 sudo chown web3:web3 /location_to_your_project/
web3
用户,在我的网站上有laravel
我有下面的代码来创建目录
Storage::disk('products')->makeDirectory($media\u dist,0755,true)代码>
目录的所有者是web3
,但当它创建目录时,它有一个根用户
我想知道它是如何发生的,并且有一个root
用户
我如何更改它以创建拥有web3
的目录?导航到Larvel目录
sudo chown web3:web3 /location_to_your_project/storage/
sudo chgrp -R web3 storage bootstrap/cache
sudo chmod -R ug+rwx storage bootstrap/cache
如果要在存储文件夹中创建目录,可以使用“文件”外观而不是“存储”。这样做:
$storage_path = storage_path('app') . DIRECTORY_SEPARATOR .
'public' . DIRECTORY_SEPARATOR . 'images';
if(!File::exists($storage_path)) {
File::makeDirectory($storage_path, 0755, true, true);
}
这段代码也适用于Linux和Windows。
最好只让“web3”用户作为“storage/…”的所有者一次,并确保其内部的后续目录
sudo chown-R web3:web3存储/
这将允许web3用户在没有权限错误的情况下处理日志和laravel缓存。
因此,对于每个新目录,您都可以使用它们
注意不要更改laravel中任何文件夹的权限模式,也不要使用“chmod”命令(尤其是775甚至777)。这不安全
附加:
使用此命令创建快捷方式“public/storage/…”链接到“storage/public/app/…”
php artisan存储:链接
“但是当它创建目录时,它有一个根用户”目录已经有了root
作为所有者,这不是OP想要的。我的所有目录都有web3
用户作为所有者,但是当laravel
创建目录时,目录有root
作为所有者,但我希望它有web3
作为所有者并更新,请检查您如何提供您的文件?Webserver或php artisan serve
?我有一个Webserver,使用ispconfig配置我的网站和nginx