Google or Baidu, there are many such problems, the solution is to modify php.ini, enable allow_url_fopen, change allow_url_fopen = On
This can solve some people's problems, some people say that in php.ini, there is Two options: allow_url_fopen =on (indicates that remote files can be opened through url), user_agent="PHP" (indicates which script is used to access the network, by default there is a ";" in front of it and can be removed.) Restart the server.
But some people still have this warning message. There is still one step left to solve it perfectly. You have to set the user_agent in php.ini. The default user_agent in php is PHP. We change it to Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) to simulate the browser
user_agent=”Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)”
I encountered this problem at work and solved it perfectly, so I share it with everyone.
I grabbed the structural formula of chemblink in batches and found that some pictures could not be displayed after the loop, but the remote files existed.
When grabbing remote files, a warning message similar to Warning: readfile(http://www.jb51.net/logo.gif) [function.readfile]: failed to open stream: HTTP request failed! appears. I use Yes
Copy the code The code is as follows:
ob_start();
readfile("http://www.jb51.net/logo.gif");
$img = ob_get_contents();
ob_end_clean( );
Copy the code The code is as follows:
$url = "http://s.jb51.net";
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url );
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT,10);
$dxycontent = curl_exec($ch);
echo $dxycontent;
?>
The above introduces the perfect solution to the request.querystring PHP error message failed to open stream: HTTP request failed!, including the content of request.querystring. I hope it will be helpful to friends who are interested in PHP tutorials.