laravel6 中报file_put_contents : No such file or directory

  • 环境: 使用vagrant 搭的虚拟机, lnmp 是使用 OneinStack, php8 + nginx + laravel6

  • 请求接口的时候报下面的错误:

    laravel6 中报file_put_contents : Failed to open stream: No such file or directory

  • 其中上图中的路径是虚拟机中的路径, 该文件在虚拟机中的权限如下:
    laravel6 中报file_put_contents : Failed to open stream: No such file or directory

  • 网上搜到的办法是使用 php artisan config:cache, 我尝试了之后, 上面的报错不显示了, 但是又换了中错误, 如下:
    laravel6 中报file_put_contents : Failed to open stream: No such file or directory

    • 上图中的路径是我本机上的, 权限情况如下:
      laravel6 中报file_put_contents : Failed to open stream: No such file or directory

    • 网上找到的解决办法是使用如下的命令:

      php artisan route:clear
      
      php artisan config:clear
      
      php artisan cache:clear
    • 但是使用以上三个命令后, 就又报了第一种错误
      laravel6 中报file_put_contents : Failed to open stream: No such file or directory

    • 这样就导致成了一个死循环了


  • 求大哥们指教下该怎么搞, 谢谢您:rose:
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 5

没有 storage/frameworkstorage/log 目录,手动建一下就好,保证 php-fpm 对应的用户有可写权限即可

3年前 评论
qingshui (楼主) 3年前
颠倒的玉石

你试试复制个storage文件放进去

3年前 评论
qingshui (楼主) 3年前
颠倒的玉石 (作者) 3年前
qingshui (楼主) 3年前
颠倒的玉石 (作者) 3年前
qingshui (楼主) 3年前
3年前 评论
qingshui (楼主) 3年前

感觉很奇怪,不知道你是怎么访问接口的,按理来说如果你用的是虚拟机IP请求,访问的是虚拟机里的环境,那么不应该出现/User/xxx这种路径的报错,如果是直接localhost访问的,那么不应该出现/data/wwwroot/xxx这种路径的报错,瞎猜的话感觉你访问的方式比较混乱,建议所有的操作都在vagrant ssh之后在虚拟机里面执行,然后用虚拟机ip的形式访问接口看看,如果配置了域名的话把虚拟机IP加入hosts之后用域名访问看看

3年前 评论
qingshui (楼主) 3年前
javalaw (作者) 3年前
qingshui (楼主) 3年前

看下是不是有文件权限发生了改变。

3年前 评论
qingshui (楼主) 3年前
我爱大可乐 (作者) 3年前
qingshui (楼主) 3年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!