PHP 배열의 이미지를 읽고 로컬 컴퓨터에 쓰는 데 PHP 클래스 내부의 함수를 사용하고 있습니다. 다음과 같은PHP file_get_contents 및 cURL이 http 오류 500 내부 서버를 발생시킵니다.
뭔가 : 그것은 성공적으로 읽고 1 개 또는 2 개의 이미지를 쓰기하지만 2 차 또는 3 차 이미지를 읽는 500 Internal severs
인상
function ImageUpload($urls)
{
$image_urls = explode(',', $urls);
foreach ($image_urls as $url)
{
$url = trim($url);
$img_name = //something
$source = file_get_contents($url);
$handle = fopen($img_name, "w");
fwrite($handle, $source);
fclose($handle);
}
}
. Apache 로그 파일에는 아무 것도 중요하지 않습니다. 또한 나는 다음의 cURL 문과 함께 file_get_contents
명령을 대체하지만 결과는 동일합니다 (은 file_get_contents
보다 하나 더 많은 이미지를 읽습니다).
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,500);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,false);
$source = curl_exec($ch);
curl_close($ch);
unset($ch);
은 또한 문제는 HTTP URL의 읽기위한 것입니다, 나는 지역 어딘가에 이미지가있는 경우, 읽기와 그 작성을위한 문제가 없습니다. 내가 어떤 코드로 변경 만든
하지 않습니다 당신이 읽을하려고하는 서버에서 온 500? 그렇다면 오류 정보는 사용자가 아닌 해당 서버의 로그에 있어야합니다. – GolezTrol
대상 서버에 액세스 할 수 없습니다. 이미지를 하나씩 읽고 화면에 울리는다면 문제가 없습니다. 하지만 루프에서 모든 내용을 읽으려고하면 오류가 발생합니다. – Amir
나는 당신이 이미 답변을 게시하고 그것을 삭제했기 때문에이 질문에서 대답을 삭제했습니다. 그것이이 자료가 속한 곳이기 때문에 답을 삭제 취소하십시오. 감사! – halfer