2011-09-07 5 views
-3

에 가능한 복제를 작동하지 :
file_get_content failed to open stream: Connection refusedfile_get_contents()는 리눅스

file_get_content 기능은 리눅스 vqs332.pair.com 2.6.32-33-서버에서 작동하지 않는. 어느 php.ini 또는 다른 문제의 설정을 변경해야합니다. 이 함수를 사용하여 주소 (동적)에서 위도와 경도를 가져옵니다.

file_get_contents("http://maps.google.com/maps/api/geocode/json?address=24411+Health+Center+Dr+Suite+200&sensor=false"); 

Plz 안내 me.

+1

"작동하지 않음"을 확인하십시오. 받은 오류 메시지를 추가하십시오 (오류 로깅을 사용하도록 설정했으며 error_reporting (E_ALL), 맞습니까?). 당신이 얻고 자하는 것이 무엇인지 그리고 실제로 얻는 것을 설명하십시오. – MarkR

+0

프록시를 사용하고 있습니까? – jbrond

+0

파일과 디렉토리에 대한 사용 권한을 확인 했습니까? – Evernoob

답변

1

호스트에 allow_url_fopen이 사용 중지되어있는 것이 문제 일 수 있습니다. 이것은 공유 호스팅 환경에서 매우 일반적이며 현명한 보안 예방 조치입니다.

문제를 해결하려면 cURL을 사용하여 파일을 로컬 경로로 다운로드하여 로컬에서 사용해야합니다.

// Remote file we want, and the local file name to use as a temp file 
$url = 'http://maps.google.com/maps/api/geocode/json?address=24411+Health+Center+Dr+Suite+200&sensor=false'; 
$localfile = 'mytempfilename.ext'; 

// Let's go cURLing... 
$ch = curl_init($url); 
$fp = fopen($localfile,'w'); 

curl_setopt($ch, CURLOPT_FILE, $fp); 
curl_setopt($ch, CURLOPT_HEADER, 0); 

curl_exec($ch); 
curl_close($ch); 
fclose($fp); 

// Get the data into memory and delete the temp file 
$filedata = file_get_contents($localfile); 
unlink($localfile); 
+0

'문제는 귀하의 호스트가 allow_url_fopen을 가졌습니다. '입니다. 사실, 확실히 말할 수는 없습니다. –

+0

@Col Shrapnel 수락되지만 90 %의 기회가 있어야 문제가 발생합니다. 이러한 질문의 빈도와 응답 빈도를 감안할 때 ... '아마도' – DaveRandom

+0

귀하의 의견을 주셔서 감사합니다. hv allow_url_fopen을 .htcaess 파일의 On으로 변경했습니다. 그 지금 일하고있어. – Viralk