0

PHPでgetimagesizeを使用して、スクリプト内の画像に関する情報を取得しています...

$thumb = "http://i.ytimg.com/vi/u6XAPnuFjJc/hqdefault.jpg";
$imageInfo = getimagesize($thumb);

問題は、私のサーバーの1つで、次のエラーが返されることです。

getimagesize()[function.getimagesize]:サーバー構成でURLファイルアクセスが無効になっています

この特定のサーバーでこの構成の問題を修正することはできません。この問題を回避する方法について誰かが何かアイデアを持っているかどうか疑問に思います。画像を取得して一時ファイルに保存し、一時画像に基づいてgetimagesizeを使用することはできますか?すべて完了したら、一時ファイルを削除する必要があります。

これが可能であれば、どうすればよいですか?

4

3 に答える 3

1

サーバー構成を変更できるので、CURLが有効になっているかどうかを確認してください。

そうである場合は、CURLを使用してイメージをローカルにコピーし、getimagesizeを実行できます。

http://php.net/manual/en/book.curl.php

于 2010-12-02T01:03:05.853 に答える
1

fopen()URL ラッパーが無効 になっているようですallow_url_fopen = off

cURL などを使用してダウンロードし、実行する必要がありますlist($width, $height) = getimagesize()

于 2010-12-02T01:05:17.043 に答える
0

CURL が有効になっていない場合でも、ソケットと HTTP 要求を使用してイメージをローカルにコピーできます。これを使用してファイルサイズ (Content-Lengthヘッダー) をチェックし、スクリプトが大量のファイルをダウンロードしないようにすることもできます (誰かが私のサイトを DOS しようとしたそうすることで XD)

于 2010-12-02T01:06:17.193 に答える