【问题标题】:Upload image to this domain and also a subdomain将图像上传到此域以及子域
【发布时间】:2014-05-18 04:32:44
【问题描述】:

我有一个图片上传脚本,在将图片上传到它所在的域时可以正常工作,但我还需要将相同的图片上传到备用子域。

这是我遇到问题的代码。

$filename = "../../images/home-features/" . $imagename;
$filename2 = "/var/www/vhosts/domain.org/httpdocs/images_home/features/" . $imagename;
imagejpeg($tmp,$filename,60);
imagejpeg($tmp,$filename2,60);

这是两个没有上传的第二个。我没有收到任何错误 - 就好像它已经工作但图像不存在。

有什么想法吗?

【问题讨论】:

  • imagejpeg 返回什么?我的猜测是存在一些权限问题或路径错误
  • 我认为imagejpeg是一个用于创建jpeg文件的php函数...
  • 没错。返回值是多少?根据手册:“成功时返回 TRUE,失败时返回 FALSE。”
  • 啊...对不起!我累了……让我看看!
  • 我已按照@nl-x 的建议将第二个 imagejpeg 函数更改为副本,并且返回 false。

标签: php cross-domain image-uploading


【解决方案1】:

我不知道为什么第二张图片不是来自相同的资源。也许资源需要倒带/重置。

但是为什么让服务器重新做同样的工作呢?只需将第一个文件复制为第二个!

copy($filename, $filename2);

ps。你检查第二个文件的目录是可写的吗?

【讨论】:

  • 我明白你的意思是复制而不是重做工作。谢谢你的提示。不过还是没有运气。 images_home 和 features 目录的权限都设置为 rwx rwx rwx。这应该没问题吧?
  • 此外,复制功能返回 false。
  • 检查您的错误日志,了解复制返回错误的原因
  • open_basedir 限制实际上是错误消息
  • 这意味着你的脚本不允许在openbasedir之外编辑/删除/创建文件。这是一个可能在您的 php.ini 中或在某些 .htaccess 或 httpd.conf 中被否决的设置。要解决问题,您需要授予对具有设置的文件的访问权限,或者被允许否决 .htaccess 中的设置。你可以这样做吗?
猜你喜欢
  • 2016-05-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-13
  • 2015-02-09
  • 2021-06-09
  • 1970-01-01
  • 2021-01-11
相关资源
最近更新 更多