Laravel:file_put_contents()无法打开流:Session文件夹的权限被拒绝

时间:2016-08-11 06:15:19

标签: laravel laravel-5

即使我已经为存储中的文件夹提供了777并且需要用户和组,我也会收到此问题。

Filesystem.php第81行中的ErrorException:file_put_contents(/ var / www / html / business / storage / framework / sessions / 2b184c1b05d6d2af943d9a4e48875301321a56ec):无法打开流:权限被拒绝

如何摆脱这个问题?

  

at HandleExceptions-> handleError('2',   “file_put_contents(在/ var / www / html等/业务/存储/框架/会话/ 2b184c1b05d6d2af943d9a4e48875301321a56ec):   无法打开流:权限被拒绝',   '/var/www/html/business/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php',   '81',数组('path'=>   '在/ var / www / html等/业务/存储/框架/会话/ 2b184c1b05d6d2af943d9a4e48875301321a56ec',   'contents'=>   “一个:5:{S:6: “_标记”; S:40: “Dyi8ML8zxaQJOEiVvqBpqk3noLDJTkIdqiC67qs9”; S:9: “_前”;一个:1:{S:3: “URL”; S:29:“{{ 3}} “;} S:22:” PHPDEBUGBAR_STACK_DATA “;一个:0:{} S:9:” _ sf2_meta “;一个:3:{S:1:” U “; I:1470895812; S:1:” C “; I:1470895812; S:1:” L “; S:1:” 0 “;} S:5:” 闪 “;一个:2:{S:3:” 旧“;一个:0:{ } S:3: “新”;一个:0:{}}}”,   'lock'=>真))

3 个答案:

答案 0 :(得分:0)

我遇到了类似的问题,请执行以下操作为我解决

chmod -R gu+w storage

chmod -R guo+w storage

php artisan cache:clear

从答案here中获得它

答案 1 :(得分:0)

如果您尝试

  

chmod -R gu + w存储

     

chmod -R guo + w存储

     

php artisan cache:clear

它仍然不起作用。

您有两种方法:

  1. 禁用SELinux(除非您正在接受培训或学习,否则我不建议这样做)

  2. 为Apache Web服务器配置SELinux策略

我想分解一下确认selinux策略的所有步骤 假设:您已经安装了所有数据库,例如mysql,postgresql或其他数据库。您已经安装了Web服务器

  
      
  1. 使用命令“ yum提供/ usr / sbin / semanage”安装semanage
  2.   
  3. 使用命令“ yum install -y policycoreutils-python”安装policycoreutils-python
  4.   
  5. 创建策略:
  6.   
     
    

a。 sudo semanage fcontext -a -t httpd_sys_content_t“ / var / www / html / webapp(/.*)?"

         

b。 sudo semanage fcontext -a -t httpd_log_t“ / var / www / html / webapp / logs(/.*)?"

         

c。 sudo semanage fcontext -a -t httpd_cache_t“ / var / www / html / webapp / cache(/.*)?"

  
     
      
  1. 允许ReadWrite访问:
  2.   
     
    

a。 sudo semanage fcontext -a -t httpd_sys_rw_content_t“ / var / www / html / webapp / storage(/.*)?"

  

访问您的WEBAPP

  
    

b。 restorecon -Rv / var / www / html / webapp

  

答案 2 :(得分:0)

chmod -R gu+w 存储

chmod -R guo+w 存储

php artisan 缓存:清除

这对我的 laravel 8 应用程序有用。