我已将我的Laravel应用程序部署在DigitalOcean上(不使用任何第三方包装)。除了用户上传文件外,该应用程序运行正常。
我按照DevMarketer(YouTube播放列表)的指南安装了LEMP堆栈。
情景:
我想上传文件并存储在我的公共目录中。但是,这样做,我得到的错误为startpfbiz.sh
。
这里是将创建的目录代码(如果不存在):
Permission Denied
在以root用户身份登录服务器时,我运行以下命令来检查文件和文件夹的权限:
$path = public_path() . '/email-attachments/';
if (! file_exists($path)) {
mkdir($path, 0775, true);
}
以下是root@host-pc:~# ls -la /var/www/laravel
total 456
drwxrwsr-x 12 www-data www-data 4096 Aug 21 09:45 .
drwxrwsr-x 4 www-data www-data 4096 Aug 18 07:13 ..
-rwxrwxr-x 1 www-data www-data 665 Aug 21 08:23 .env
-rw-rwSr-- 1 www-data www-data 521 Aug 21 09:45 .env.example
-rw-rwSr-- 1 www-data www-data 111 Aug 21 09:45 .gitattributes
-rw-rwSr-- 1 www-data www-data 157 Aug 21 09:45 .gitignore
drwxrwsr-x 8 www-data www-data 4096 Aug 21 09:45 app
-rw-rwSr-- 1 www-data www-data 1646 Aug 21 09:45 artisan
drwxrwsr-x 3 www-data www-data 4096 Aug 21 09:45 bootstrap
-rw-rwSr-- 1 www-data www-data 1496 Aug 21 09:45 composer.json
-rw-rwSr-- 1 www-data www-data 150371 Aug 21 09:45 composer.lock
drwxrwsr-x 2 www-data www-data 4096 Aug 21 09:45 config
drwxrwsr-x 5 www-data www-data 4096 Aug 21 09:45 database
-rw-rwSr-- 1 www-data www-data 1063 Aug 21 09:45 package.json
-rw-rwSr-- 1 www-data www-data 1100 Aug 21 09:45 phpunit.xml
drwxrwsr-x 10 www-data www-data 4096 Aug 21 09:45 public
-rwxrwxr-x 1 www-data www-data 440 Aug 21 06:27 queue_worker.log
drwxrwsr-x 5 www-data www-data 4096 Aug 18 07:56 resources
drwxrwsr-x 2 www-data www-data 4096 Aug 21 09:45 routes
-rw-rwSr-- 1 www-data www-data 563 Aug 21 09:45 server.php
drwxrwsr-x 6 www-data www-data 4096 Aug 18 07:56 storage
drwxrwsr-x 4 www-data www-data 4096 Aug 21 09:45 tests
drwxrwsr-x 39 www-data www-data 4096 Aug 21 05:58 vendor
-rw-rwSr-- 1 www-data www-data 1439 Aug 21 09:45 webpack.mix.js
-rw-rwSr-- 1 www-data www-data 212974 Aug 21 09:45 yarn.lock
ps -ef | grep nginx
以下是root@host-pc:~# ps -ef | grep nginx
root 14862 1 0 11:45 ? 00:00:00 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
www-data 14863 14862 0 11:45 ? 00:00:00 nginx: worker process
root 15489 12952 0 12:19 pts/0 00:00:00 grep --color=auto nginx
ps -ef | grep php
我不知道我在做什么错误(我知道它一定是个傻瓜),但我还是找不到解决方案。
请帮我解决这个问题。感谢。
答案 0 :(得分:0)
如果你改变了这个
$path = public_path() . '/email-attachments/';
到此
$path = public_path('email-attachments/');
答案 1 :(得分:0)
希望,这会对你有帮助。
$path = base_path() . '/public/email-attachments';
mkdir($path, 0755, true);