远程 AWS EB 实例上的“php artisan migrate”上的 PHP 致命错误:laravel.log:权限被拒绝
Posted
技术标签:
【中文标题】远程 AWS EB 实例上的“php artisan migrate”上的 PHP 致命错误:laravel.log:权限被拒绝【英文标题】:PHP Fatal Error on 'php artisan migrate' on remote AWS EB instance: laravel.log: Permission denied 【发布时间】:2015-08-12 21:04:26 【问题描述】:当我通过 SSH 连接到我的 AWS EB 实例以运行 php artisan migrate
时,我收到以下错误消息:
Link to bigger size of picture below
我完全糊涂了。首先,我在本地服务器上没有收到此错误。其次,一个简单的日志文件与迁移有什么关系? git默认会忽略它们,所以不会上传日志文件。
叹息...关于如何允许我运行 php artisan migrate
的任何想法?
【问题讨论】:
它正在尝试向日志文件夹写入一些内容,但权限设置不正确。 啊哈。现在我聪明多了。您不会碰巧知道如何允许应用程序写入日志吗?感谢您的时间:) 【参考方案1】:它始终是存储文件夹。空白页或权限被拒绝,这是该死的存储文件夹。
我不知道 EB 是如何工作的,如果它是常规发行版还是什么,但您应该将存储文件夹的所有权更改为 Web 服务器(很可能是 www-data),以便它可以构建视图然后设置 @987654321 @ 权限,以便您可以写入/读取日志。
比如:
sudo chown -R www-data:www-data storage/
sudo chmod -R 775 storage/
【讨论】:
你是对的。该死的存储文件夹是罪魁祸首。当我执行以下命令时它起作用了:sudo chmod -R ugo+rw storage
【参考方案2】:
我也遇到了同样的错误
如here所述,
AWS AMI 使用 webapp 作为 Web 用户,而不是 apache 或 ec2-user 作为 文件显示。在这种情况下,webapp 用户没有访问权限 那些文件。
所以,通过那里提到的步骤解决了问题
sudo chown $USER:webapp ./storage -R
find ./storage -type d -exec chmod 775 \;
find ./storage -type f -exec chmod 664 \;
取决于你之后的目标you might need to go through this too。
【讨论】:
以上是关于远程 AWS EB 实例上的“php artisan migrate”上的 PHP 致命错误:laravel.log:权限被拒绝的主要内容,如果未能解决你的问题,请参考以下文章
在 ec2 实例中部署 eb 后,ruby 应用程序 aws 数据丢失