php - Laravel 权限在 storage/meta/services.json 中被拒绝

标签 php apache laravel-4 fedora

好吧,这个错误是众所周知的,但就我而言,我无法在我这边减轻它。我已将 laravel-4 安装迁移到另一台服务器,第一次访问时出现此错误:

file_put_contents(/var/www/html/MyApp/app/storage/meta/services.json): failed to open stream: Permission denied

我按照以下不同的谷歌搜索结果

但是,他们中的任何一个都无法解决我的问题。我还尝试清理缓存和转储自动类命令:

php artisan cache:clear
chmod -R 777 app/storage
composer dump-autoload

另外,我认为可能是webserver进程的问题,所以我这样寻找它的用户:

$ ps -ef|grep httpd

apache   11978 11976  0 11:14 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND

然后,我将 apache 添加到目录组所有者,但问题仍然存在。

我不知道还能做什么,我快疯了,因为在满月下裸体跳舞都不能解决问题。

最佳答案

我已经找到了这个问题的原因。看起来 selinux 不允许 httpd 服务(apache 网络服务器)写入我的应用程序文件夹。所以,我做了:

setsebool -P httpd_unified 1 

现在一切正常!

关于php - Laravel 权限在 storage/meta/services.json 中被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23571045/

相关文章:

php - Laravel 4 中 Controller 过滤器的运行顺序是什么

php - 如何在 PHP 环境之间更改不同的配置设置?

laravel-4 - Laravel 4 - 无法覆盖 getDateFormat()

php - 如何查询表的列名

xml - 在浏览器中打开 SVG 呈现 XML 代码而不是图像

ruby-on-rails - Capistrano 不安装

perl - 作为 cgi 脚本运行 Dancer2 应用程序时 HTTP 504 网关超时

laravel - 全局过滤——如何在 Laravel Eloquent 中使用全局作用域

PHP:链接方法调用

php - APNS - 通知推送 ios : Connection reset by peer PHP