呵呵,我的出错 Warning: Unable to open 'http://qqshow-item.tencent.com/1448/9/00/' for reading: No such file or directory in /home/yjj/public_html/index.php on line 2
我都测试了,都不行。 我的PHP版本是4.3.2,是从4.3.1升级的。 不过很奇怪的是phpinfo()输出的竟然是: PHP Version 4.3.1 但是 _SERVER["SERVER_SIGNATURE"]却是<address>Apache/2.0.46 (Win32) PHP/4.3.2 Server at 202.112.131.130 Port 80</address>,大家的是这样么?会不会和这个有关系?
如果php.ini修改配置为 allow_url_fopen = Off 则有如下错误 Warning: copy() [function.copy]: URL file-access is disabled in the server configuration in E:\WebSite\php\test\zz.php on line 22Warning: copy(http://qqshow-item.tencent.com/1448/9/00/00.gif) [function.copy]: failed to create stream: no suitable wrapper could be found in E:\WebSite\php\test\zz.php on line 22
大致看了一下 php.ini这项关闭掉就可以了 magic_quotes_gpc = On 改作 magic_quotes_gpc = Off 我打开这项后生成的图片文件跟你的一抹一样 你关闭后看一下。
:( 我的关闭以后仍然生成同样的文件…… 而且,我试了在2K3 SERVER下用APACHE 2.0.46+PHP 4.3.2,使用CGI模式。关闭这一项之后,得到的也是同样的图片。 另,有时候会出现如下警告: Warning: copy(http://qqshow-item.tencent.com/1448/9/00/00.gif): failed to open stream: HTTP request failed! in F:\dev\test.php on line 3
我机器上的这个配置几乎未作任何修改。如果你有条件的话,重新配置一下php,只要注意一下 magic_quotes_gpc = Off (大概默认的就是这个) 然后测试一下,看看是否可以成功。换台机器看一下 ---------------------------------------------------你提供一下php.ini和httpd.conf的内容。以及他们的版本。你得页面显示,感觉是module方式,而你说是cgi方式。有些奇怪。猜测大概http.conf里面关于 支持php的地方的配置的错误吧?
Warning: Unable to open 'http://qqshow-item.tencent.com/1448/9/00/' for reading: No such file or directory in /home/yjj/public_html/index.php on line 2
copy("http://qqshow-item.tencent.com/1448/9/00/00.gif","tes2.gif");
?>这样你试试!
$filename = "http://qqshow-item.tencent.com/1448/9/00/00.gif";
$lines = file ($filename);
$handle = fopen("test2.gif", "w");
foreach ($lines as $line_num => $line) {
fwrite($handle, $line);
}
fclose($handle);
?>我是这么做的,结果得到的文件大于实际的文件大小.而且得到的文件还格式还被破坏了.
ACDsee都打不开.帮你顶一下.
试一下就知道行不行了。TO: xizi2002(☆☆戏☆子☆☆)
php.ini中
allow_url_fopen = On
试试TO:allkill(傲气游)
两种方法都不可以,我这里得到的都是2.32K的文件(内容也是一样的),而原文件是4.35K。
你用你的代码拷贝一个 文本文件,应该可以通过的,:)
建议楼主看看是否有别的地方有问题。
我的就是使用WB参数。
不知道别的地方有问题是什么意思?
我把文件复制下来放在我的网站上读取就是很正常的。
copy("http://qqshow-item.tencent.com/1448/9/00/abc.gif","tes2.gif");
?>
理论上这样作是可以的。
如果
http://qqshow-item.tencent.com/1448/9/00/
这个后面没有具体的参数的话,那么应当取默认叶面,可是默认叶面一般都是文本格式的
你存成一个图片不妥。
TO tntxhy (落日使者)
我的到文件大小是4.39k.居然比实际的大.迷惑啊!
你测试一下这个
http://qqshow-item.tencent.com/1448/9/00/
返回的是什么?就是那个图片。和http://qqshow-item.tencent.com/1448/9/00/00.gif是一样的。使用http://qqshow-item.tencent.com/1448/9/00/00.gif我也测试过,不行。
奇怪的是诸如:
http://qqshow-item.tencent.com/2286/9/00/
同样的代码是可行的。
这个我想应该是否是PHP的BUG?
和
http://qqshow-item.tencent.com/1448/9/00/00.gif
我都测试过了跟另存图片的生成的文件字节数完全相同,都是4463个字节测试代码:
<?
$url="http://qqshow-item.tencent.com/1448/9/00/00.gif";
copy($url,"c:\\0.gif");
?>
和
http://qqshow-item.tencent.com/1448/9/00/00.gif
我都测试过了跟另存图片的生成的文件一样,都是4463个字节测试代码:
<?
$url="http://qqshow-item.tencent.com/1448/9/00/00.gif";
copy($url,"c:\\0.gif");
?>
我的PHP版本是4.3.2,是从4.3.1升级的。
不过很奇怪的是phpinfo()输出的竟然是:
PHP Version 4.3.1
但是
_SERVER["SERVER_SIGNATURE"]却是<address>Apache/2.0.46 (Win32) PHP/4.3.2 Server at 202.112.131.130 Port 80</address>,大家的是这样么?会不会和这个有关系?
<?
$url="http://qqshow-item.tencent.com/1448/9/00/00.gif";
copy($url,"c:\\0.gif");
?>
生成的0.gif为4463字节,跟另存该图片字节数完全一样。--------
我把我的机器的配置我放到主页上,供给感兴趣的朋友参考一下。p.s.我的机器配置不是最优的,我已经转到java&jsp开发了,所以配置都是一些基本的配置,
用到什么我就修改相关配置,呵呵,其实php很久没有研究了,惭愧。
allow_url_fopen = Off
则有如下错误
Warning: copy() [function.copy]: URL file-access is disabled in the server configuration in E:\WebSite\php\test\zz.php on line 22Warning: copy(http://qqshow-item.tencent.com/1448/9/00/00.gif) [function.copy]: failed to create stream: no suitable wrapper could be found in E:\WebSite\php\test\zz.php on line 22
然后
你们传一下
<?
phpinfo();
?>
这句话生成的静态配置文件,有空跟你们共同研究1下,:)
里面有我用你的测试程序得到的图片和PHPINFO的输出。
劳烦帮忙
劳驾阁下多多帮忙。很需要尽快解决这个问题。
php.ini这项关闭掉就可以了
magic_quotes_gpc = On
改作
magic_quotes_gpc = Off
我打开这项后生成的图片文件跟你的一抹一样
你关闭后看一下。
我的关闭以后仍然生成同样的文件……
而且,我试了在2K3 SERVER下用APACHE 2.0.46+PHP 4.3.2,使用CGI模式。关闭这一项之后,得到的也是同样的图片。
另,有时候会出现如下警告:
Warning: copy(http://qqshow-item.tencent.com/1448/9/00/00.gif): failed to open stream: HTTP request failed! in F:\dev\test.php on line 3
magic_quotes_gpc = Off
(大概默认的就是这个)
然后测试一下,看看是否可以成功。换台机器看一下
---------------------------------------------------你提供一下php.ini和httpd.conf的内容。以及他们的版本。你得页面显示,感觉是module方式,而你说是cgi方式。有些奇怪。猜测大概http.conf里面关于
支持php的地方的配置的错误吧?
个人认为不是我配置的问题,因为2K3 SERVER上是我完全重新安装的PHP 4.3.2+APACHE 2.0.46 CGI模式。如你所说,只是修改了magic_quotes_gpc = Off。仍然是不行。
XP下的的确是模块方式,PHPINFO的输出有一些问题,所以我才改用2K3 SERVER试了。
暂时就这样吧,问题我想到用别的办法解决了。
很感谢大家的帮助,个人认为可能是一个BUG,有兴趣的人可以继续测试,帖子就此结了。