首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何修复错误: laravel.log无法打开?

如何修复错误: laravel.log无法打开?
EN

Stack Overflow用户
提问于 2014-05-02 00:02:45
回答 17查看 500K关注 0票数 268

我在laravel是个新手,事实上,我正在尝试创建我的第一个项目。由于某种原因,我一直收到这个错误(我甚至还没有开始编码)

Error in exception handler: The stream or file "/var/www/laravel/app/storage/logs/laravel.log" could not be opened: failed to open stream: Permission denied in /var/www/laravel/bootstrap/compiled.php:8423

我读过这篇文章,这跟权限有关,但是chmod -R 775 storage一点帮助都没有。

EN

回答 17

Stack Overflow用户

回答已采纳

发布于 2014-05-02 03:30:42

要解决此问题,您需要将目录的所有权更改为uses服务器使用的unix用户。

  1. 走出虚拟机
  2. 使用控制台,转到您的同步文件夹(漫游)
  3. sudo chown -R $USER:www-数据存储
  4. chmod -R 775存储

尽管我使用VM用户在VM中创建了项目,但该文件夹属于真实计算机中的用户;因此,在尝试

现在它起作用了。

感谢所有帮助我弄清楚这件事的人

编辑:

实际上,它仍然不工作,它仍然给我一个“拒绝许可”的问题。

这是我所做的,我修改了我的Vagrantfile,如下所示:

config.vm.synced_folder "./app","/var/www/", create:true,
:owner => "vagrant",
:group => "www-data",
:mount_options => ["dmode=775","fmode=664"]
票数 80
EN

Stack Overflow用户

发布于 2017-08-14 19:24:27

永远不要将目录设置为777。您应该更改目录所有权。因此,将您当前登录的用户设置为所有者和set服务器用户(www-data,apache,...)作为一个团队。你可以试试这个:

sudo chown -R $USER:www-data storage
sudo chown -R $USER:www-data bootstrap/cache

然后,要设置目录权限,请尝试执行以下操作:

chmod -R 775 storage
chmod -R 775 bootstrap/cache

更新:

user服务器用户和组取决于您的user服务器和操作系统。要弄清楚您的web服务器用户和组是什么,请使用以下命令。对于nginx使用:

ps aux|grep nginx|grep -v grep

对于apache使用:

ps aux | egrep '(apache|httpd)'

票数 492
EN

Stack Overflow用户

发布于 2014-05-02 01:00:28

永远不要在你的实时服务器上使用777作为目录,但是在你自己的机器上,有时我们需要做更多的775,因为

chmod -R 775 storage

手段

7 - Owner can write
7 - Group can write
5 - Others cannot write!

如果您的you服务器未作为Vagrant运行,它将无法写入,因此您有两种选择:

chmod -R 777 storage

或者将组更改为您的the服务器用户,假设它是www-data

chown -R vagrant:www-data storage
票数 168
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23411520

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档