我使用以下代码查看网站是否已关闭。
<?php
if (isset($_POST['submit'])) {
$url = $_POST['url'];
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_NOBODY, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_exec($curl);
$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);
if ($code == 200) {
echo "<h3>Up!</h3>";
} else {
echo "<h3>Down!</h3>";
}
}
?>
<form action="" method="post">
Url: <input type="text" name="url" /><br />
<input type="submit" name="submit" />
</form>
我遇到的问题是,当我检查facebook.com时,它说它已关闭,但它不是......
为什么这样做?我认为它可能是https,但谷歌工作正常。
答案 0 :(得分:1)
答案 1 :(得分:1)
我决定发布我的更新代码,以防其他人遇到同样的问题
<?php
if (isset($_POST['submit'])) {
$url = $_POST['url'];
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_NOBODY, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_exec($curl);
$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);
echo "<h3>$code</h3>";
if ($code == 200) {
echo "<h3>Up! with a 200 code</h3>";
}
if ($code == 301) {
echo "<h3>Up! with a 301 code</h3>";
}
else {
echo "<h3>Down!</h3>";
}
}
?>
<form action="" method="post">
Url: <input type="text" name="url" /><br />
<input type="submit" name="submit" />
</form>
上面你可以看到我添加了以下内容
if ($code == 301) {
echo "<h3>Up! with a 301 code</h3>";
}
有很多离线代码所以我决定只使用在线代码
Kei 在评论中发布,您可以看到返回代码列表here
我还添加了行echo "<h3>$code</h3>";
,以便您可以从表单中看到响应,即200,301