file_put_contents无法在服务器上存储图像

时间:2012-12-31 07:58:56

标签: php facebook

$path = 'http://fbcdn-profile-a.akamaihd.net/hprofile-ak-snc6/372096_100002534902767_1927052265_n.jpg';
$info = file_put_contents('new/angel.jpg', file_get_contents(urldecode($path)));
echo $info;

它在localhost上运行正常,但在我的网站上无效。

知道问题可能是什么?

3 个答案:

答案 0 :(得分:3)

  • 检查日志中的错误消息
  • 文件夹(“new”)是否存在?
  • 权限是否设置为允许脚本编写?
  • 您确定错误在file_put_contents中吗?如果主机禁止url_fopen,则file_get_contents可能会失败。
  • 除非$ path实际上是硬编码的,否则您可能会引入任意文件泄露安全问题。确保验证输入。

答案 1 :(得分:0)

您需要授予(写入)上传文件夹

的权限

您可以通过FTP程序使用此代码在数值中执行此操作:777

答案 2 :(得分:0)

  1. 确保对您正在编写的文件具有写入权限
  2. 我认为相对路径是问题所在。您的本地可能有该文件的路径,但该路径在服务器上不存在。 3.请在$info=file_put_contents('new/angel.jpg', file_get_contents(urldecode($path)))行加上正斜杠;在你的“新”文件夹之前,试试我认为这可能是个问题