【问题标题】:How to create directory in Ubuntu using Laravel?如何使用 Laravel 在 Ubuntu 中创建目录?
【发布时间】:2019-05-24 13:23:11
【问题描述】:

当每个用户在 laravel Usercontroler 中激活他们的帐户时,我想为他们创建一个目录。

但它不适用于以下代码

 $path = '/var/www/dngo/files/local/' . $object->id;
 File::makeDirectory($path, $mode = 0777, true, true);

*Apache 文档根是/var/www/dngo/public

*Ubuntu VPS is18.10,托管在digitalocean上。

【问题讨论】:

  • 你检查过,运行php的用户是否可以在/var/www/dngo/public中创建文件夹?
  • 如何查看?
  • 如果您的$object->id 尚不存在,这将为您创建一个目录:Storage::disk('local')->putFileAs('myfolder/'.$object->id,$request->file('file_textbox'), 'filename.txt');

标签: laravel ubuntu laravel-5 directory digital-ocean


【解决方案1】:

试试这个

首先授予权限,例如在 laravel 的存储目录中创建用户文件夹,然后打开终端并授予这样的权限

sudo chmod -R 775 /var/www/dngo/storage

如果你没有给项目组权限,那么也运行这个 命令

sudo chgrp -R www-data /var/www/dngo

现在在你的用户控制器中添加这一行

$storagePath = storage_path('user/'.$object->id);

File::isDirectory($storagePath) or File::makeDirectory($storagePath, 0777, true, true); 

首先检查目录是否存在然后不创建其他明智的创建新的 文件夹

【讨论】:

  • 感谢它现在可以使用
猜你喜欢
  • 2018-08-22
  • 1970-01-01
  • 2017-11-24
  • 1970-01-01
  • 1970-01-01
  • 2016-11-09
  • 2021-11-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多