【问题标题】:External Image resizing外部图像大小调整
【发布时间】:2011-08-25 22:33:13
【问题描述】:

所以我有一个 PHP 脚本文件,可以动态调整图像大小。虽然这适用于许多站点和服务器,但我有一台服务器无法正常工作。

脚本是这样工作的:

<img src="resize/thumb2.php?src=http://a8.sphotos.ak.fbcdn.net/hphotos-ak-snc6/284989_230936523610152_118543444849461_606799_3897837_n.jpg&w=150&h=100&type=crop.">

结果是以下错误(它因浏览器而异,但要点是找不到文件):

Firefox can't find the file at http://xx.xx.xx.xx/~test/tools/resize/thumb2.php?src=http://a8.sphotos.ak.fbcdn.net/hphotos-ak-snc6/284989_230936523610152_118543444849461_606799_3897837_n.jpg&w=150&h=100&type=crop.

所以从上面的输出中你可以看到它实际上是在尝试将整个链接作为文件打开。

由于这是唯一不工作的服务器,我强烈猜测这是服务器设置问题?

我试过设置:

ini_set('allow_url_fopen', 1);
ini_set('allow_url_include', 1);

任何帮助将不胜感激。

谢谢

【问题讨论】:

  • urlencode() 您的链接正确。 functions-online.com/urlencode.html
  • 尝试访问 URL «xx.xx.xx.xx/~test/tools/resize/thumb2.php...» 看看会发生什么。
  • 嗨 B7ackAnge7z。这正是我所做的,也是我得到错误的地方。

标签: php image resize external file-not-found


【解决方案1】:

不要偷@Pekka的风头,但他的评论是正确的答案。 (如果他将其发布为答案,我会很乐意删除)

你需要urlencodesrc,然后在thumb2.php中解码

<img src="resize/thumb2.php?src=<?php echo urlencode('http://example.com/logo.gif'); ?>">

【讨论】:

  • 谢谢大家的回答。但如果这是真的(我会在可以测试的时候进行测试),为什么我只在一台服务器上遇到了这个问题,而其他许多服务器却完美无缺?
  • 它不应该起作用。什么都没有逃脱。我不会尝试让它再次工作,URL 广告参数应该被编码
【解决方案2】:

“resize/thumb2.php?src=”之后的所有文本编码错误。尝试使用 urlencode() 或类似的东西,对这个 URL 的“查询部分”进行编码。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多