Heim  >  Artikel  >  Backend-Entwicklung  >  Curl – PHP ermittelt, ob eine Website geöffnet werden kann

Curl – PHP ermittelt, ob eine Website geöffnet werden kann

WBOY
WBOYOriginal
2016-09-19 09:16:281856Durchsuche

Ich möchte feststellen, ob eine Website geöffnet werden kann
1. Verwenden Sie zunächst PHP, um zu sehen, ob ein Ping möglich ist.
Ob die HTTP-Rückgabe 200Ok ist.
3 Dateiinhalt hat HTML-Tags
Jetzt weiß ich hauptsächlich nicht, wie ich den dritten Schritt implementieren soll. Ist es, direkt file_get_content zu verwenden und dann zu prüfen, ob HTML in dieser Datei vorhanden ist?
Strpos verwenden?

Antwortinhalt:

Ich möchte feststellen, ob eine Website geöffnet werden kann
1. Verwenden Sie zunächst PHP, um zu sehen, ob ein Ping möglich ist.
Ob die HTTP-Rückgabe 200Ok ist.
3 Dateiinhalt hat HTML-Tags
Jetzt weiß ich hauptsächlich nicht, wie ich den dritten Schritt implementieren soll. Ist es, direkt file_get_content zu verwenden und dann zu prüfen, ob HTML in dieser Datei vorhanden ist?
Strpos verwenden?

<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>

Wenn ein Sprung wie 302 auch als erfolgreicher Zugriff gewertet wird, können Sie ihn auch zum Urteil hinzufügen.

<code>if ($curl_code == 200 || $curl_code == 302) {
    echo '连接成功,状态码:' . $curl_code;
} else {
    echo '连接失败,状态码:' . $curl_code;
}</code>

http://www.baidu.com/ gibt 200 zurück;
http://www.baidu.com/xxx gibt 302 zurück. Während des tatsächlichen Zugriffs springt http://www.baidu.com/xxx so zu https://www.baidu.com/search/error.html.

Ich denke, Sie können zuerst den Dateiinhalt abrufen und dann feststellen, ob ein HTML-Tag vorhanden ist! Es gibt keinen Grund zur Sorge ^_^

curl Simulieren Sie einmal einen Besuch und beurteilen Sie anhand des Rückgabewerts.

curl ermittelt, ob der HTTP-Status 200 ist

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn