2010-07-19 3 views
0

특정 mp3가 있는지 확인하고 있습니다. 때로는 문제가 없지만 특정 mp3 파일은 404로 표시되며 찾을 수 없습니다. 여기에 내가 사용하고 코드는 다음과 같습니다cURL은 존재하는 파일 (원격 서버)에서 404를 반환합니다. 왜?

$ch = @curl_init($file_path); 
@curl_setopt($ch, CURLOPT_HEADER, true); 
@curl_setopt($ch, CURLOPT_NOBODY, true); 
@curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); 
@curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); 

@curl_exec($ch); 
$header = curl_getinfo($ch); 
curl_close($ch); 
echo "<pre>"; 
print_r($header); 
echo "<pre>"; 

내가 사이트 리디렉션을 사용하지만, 문제가 해결되지 않았다 TRUE로 "CURLOPT_FOLLOWLOCATION"로 설정 되었기 때문에 문제라고 생각했다.

http 코드는 다음 mp3에 404를 표시합니다. 브라우저에서 브라우저로 이동하여 작동하는지 확인할 수 있습니다. 당신은 제대로 컬 exec 된 가정하고

@curl_exec($ch); 

, 멀리 던져 : 기본적으로

http://audio.arjlover.net/audio/pesni/Babies_go_series/Babies%20Go%20Beatles/01%20Hey%20Jude%20Beatles.mp3

http://www.dagatinha.com.br/musicas/Lady%20Gaga%20%20-%20Just%20Dance.mp3

+2

관련없는 메모에서 해당 음악 파일의 저작권을 소유하게됩니까? – DevSolar

+0

@DevSolar : user371699가 실제로 레이디 가가인지 묻고 있습니까? – webbiedave

+2

Lady Gaga는 Ruby를 사용할 것입니다 – stimms

답변

1

:이이 문제가 많은 단지 몇 무작위 예 그 반환 값. 쿼리를 수행하는 동안 문제가 발생하면 exec는 false를 반환하고 curl_error 및 curl_errno에는 무엇이 폭발했는지와 어떻게 진단되었는지에 대한 진단 정보가 포함됩니다. 결코 컬이 성공했다고 가정하지 마십시오. 실패하기에는 너무 많은 이유가 있지만 성공하려면 한 가지 방법 밖에 없습니다. 최소한 코드가 다음과 같이 변경됩니다.

이유가 사라진 이유를 확인하십시오. 그렇지 않으면 이상한 결과를 남기고 왜 발생했는지 알 수있는 기회를 포기한 것입니다.

관련 문제