PHP文件内容仅适用于某些服务器

PHP文件内容仅适用于某些服务器,php,.htaccess,curl,file-get-contents,Php,.htaccess,Curl,File Get Contents,我在一个网站上工作,这将有大量的文件。因此,我为我的文件(如图像和txt文件)创建了一个单独的服务器。问题是php的file_get_contents函数不适用于此服务器 我尝试了echo文件\u获取\u内容(“http://url");而我什么也得不到,但当我做回显文件时,我得到的是内容(“http://google.com");我得到谷歌的主页。这与卷曲连接的情况相同 $ch = curl_init(); $url = "http://running-files.rf.gd/hello.ht

我在一个网站上工作,这将有大量的文件。因此,我为我的文件(如图像和txt文件)创建了一个单独的服务器。问题是php的file_get_contents函数不适用于此服务器

我尝试了
echo文件\u获取\u内容(“http://url");而我什么也得不到,但当我做
回显文件时,我得到的是内容(“http://google.com");我得到谷歌的主页。这与卷曲连接的情况相同

$ch = curl_init();
$url = "http://running-files.rf.gd/hello.html";
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch, CURLOPT_MAXREDIRS, 5);   
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

$body = curl_exec($ch);
$info  = curl_getinfo($ch); 
$error = curl_errno($ch);  
curl_close($ch);  

echo $body;

我猜在.htaccess文件中需要一些东西。有人有什么建议吗?

如果要打开带有特殊字符的URI, (如空格)您需要使用urlencode()对URI进行编码

例:


“带有特殊字符的东西”在大多数情况下都是变量

,所以使用curl也无法得到响应?使用curl_getinfo从连接中提取所有信息,如状态代码。@Pete您介意我要求您指定url吗?但它会重定向到主服务器文件,默认情况下,文件_get_contents()应该遵循重定向,但curl不会。您需要指定
curl\u setopt($ch,CURLOPT\u FOLLOWLOCATION,true)我需要得到一个文件,例如不是真正的答案,因为问题中没有任何东西暗示他们使用特殊字符。urlencode应该用于单个值,而不是整个URL。
file_get_contents("http://domain-name.com?id=".urlencode("something with special characters"));