使用七牛云存储PHP SDK上传文件时,报错:Warning: file_put_contents(/.qiniu_phpsdk_hostscache.json),但上传文件成功。
根据错误提示找到Zone.php第149行和第150行:
1 2 | $path = $this->hostCacheFilePath(); file_put_contents($path, json_encode($this->hostCache), LOCK_EX); |
起初猜测网站目录没有写入权限,在设置读写权限后仍然报错,通过第149行代码找到第156和第157行:
1 2 | $home = getenv('HOME'); return $home . '/.qiniu_phpsdk_hostscache.json'; |
测试了一下getenv(‘HOME’)没有输出,因此造成file_put_contents无法写入,于是将这两行代码替换为:
1 | return __DIR__ . '/.qiniu_phpsdk_hostscache.json'; |
至此问题已解决。
原文链接:https://xiaohost.com/2346.html,转载请注明出处。