Unable to open remote XML file using fopen(). What all permission i need to set in server or what parameters i need to set in fopen() function.?
I am trying to open an XML file in remote server through fopen() function. I have two remote servers and the file permission of the xml is set to 777 in both servers. i am able to open the xml from one server , but not from other. Both files can be opened in browser.
What all permission i need to set or what parameters i need to set in fopen() function.?
this is the function
function getFileData($ProjectName)
{
$file = fopen($ProjectName, "r") or exit("Unable to open File! ".$ProjectName);
$fileContent="";
while(!feof($file))
{
$fileContent.=fgets($file);
}
fclose($file);
echo $fil开发者_StackOverfloweContent;
}
getFileData('http://serverA.com/myxml.xml'); // gives the content
getFileData('http://serverB.com/myxml.xml'); // gives the error fopen(http:/serverB.com/myxml.xml) [function.fopen]: failed to open stream: HTTP request failed!
You only have one / after http: in the last two lines - but I doubt that's the problem. Can you open the file in the browser?
Perhaps try using file_get_contents . It does the same as your function, except it's ready made and fully tested by the PHP guys.
I think there should be http://server and not http:/server.
Apart from the visible problem with URL, also check what is the value for allow_url_fopen
set in your php.ini, if you can open file from one server but not from other server this may be correctly set for you, did you check about timeouts?
精彩评论