【问题标题】:throw new FileException('File must be readable.');throw new FileException('文件必须是可读的。');
【发布时间】:2015-04-21 06:31:17
【问题描述】:

我正在使用 Laravel ,以下代码适用于我的本地机器(Mac)

$Avatarpath =  base_path()."/uploads/image/avatar.png"
$filePath   =  base_path()."/uploads/image/myimage.png" //which gives "/var/www/myproject/uploads/image/myimage.png"

return Response::download(file_exists($filepath) ? $filepath :$Avatarpath);

但是当我在 linux (Centos) 服务器上部署相同的代码时,它会抛出以下异常

throw new FileException('File must be readable.'); 

附加信息:“uploads”文件夹具有 drwxr-xr-x (775) 权限

感谢您有兴趣解决此问题。

【问题讨论】:

  • 文件夹有775但文件也有?
  • 谢谢@lukasgeiter 我希望你把它写成答案然后我可以接受.. 我只是运行这个命令来更改目录内容的权限chmod -R 775 uploads/
  • 完成!不客气;)

标签: php linux laravel-4 centos


【解决方案1】:

重要的是文件本身的权限也是正确的!

通常在这种情况下,您应该使用递归标志 (-R) 运行 chmod

chmod -R 775 uploads/

【讨论】:

  • 或用户:组设置。
【解决方案2】:

如果函数 http://php.net/manual/en/splfileinfo.isreadable.php 返回 false,则抛出此异常。

您的文件权限必须拒绝读取文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-24
    • 2019-01-26
    • 1970-01-01
    • 2017-07-15
    • 2017-04-27
    相关资源
    最近更新 更多