웹사이트를 열 수 있는지 확인하고 싶습니다
1. 먼저 PHP를 사용하여 웹사이트에 ping을 수행하여 ping이 가능한지 확인합니다
2. http 반환이 200K인지 여부
3. 파일 내용에 html 태그가 있습니다
이제 주로 세 번째 단계를 구현하는 방법을 모르겠습니다. 직접 file_get_content를 수행한 다음 이 파일에 html이 있는지 확인합니까?
strpos를 사용합니까?
웹사이트를 열 수 있는지 확인하고 싶습니다
1. 먼저 PHP를 사용하여 웹사이트에 ping을 수행하여 ping이 가능한지 확인합니다
2. http 반환이 200K인지 여부
3. 파일 내용에 html 태그가 있습니다
이제 주로 세 번째 단계를 구현하는 방법을 모르겠습니다. 직접 file_get_content를 수행한 다음 이 파일에 html이 있는지 확인합니까?
strpos를 사용합니까?
<code><?php $url = 'http://www.baidu.com/'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_TIMEOUT, 30); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_exec($ch); // $resp = curl_exec($ch); $curl_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if ($curl_code == 200) { echo '连接成功,状态码:' . $curl_code; } else { echo '连接失败,状态码:' . $curl_code; }</code>
302 같은 점프도 접속 성공으로 간주된다면 판정에 추가할 수도 있습니다.
<code>if ($curl_code == 200 || $curl_code == 302) { echo '连接成功,状态码:' . $curl_code; } else { echo '连接失败,状态码:' . $curl_code; }</code>
http://www.baidu.com/
은 200을 반환하고, http://www.baidu.com/xxx
은 302를 반환합니다. 실제 액세스 중에 http://www.baidu.com/xxx
는 이렇게 https://www.baidu.com/search/error.html
으로 점프합니다.
파일 내용을 먼저 받아보시고 html 태그가 있는지 판단하시면 될 것 같아요! 걱정하실 것 없습니다 ^_^
curl
한 번 방문을 시뮬레이션하고 반환 값으로 판단합니다.
curl은 http 상태가 200인지 확인합니다