Как PHP на стороне сервера проверить, если URL-адрес веб-сайта является действительным? - PullRequest
4 голосов
/ 23 апреля 2011

Я искал наши вопросы SO, но нашел решения, основанные на вызове ping команды, выполняемой с использованием system функции PHP.

Мой веб-сервер не позволяет мне это делать.Что мне делать?

Пожалуйста, помогите, Nam.

Обновление

Мне нужно проверить с server side.

Ответы [ 2 ]

15 голосов
/ 23 апреля 2011

Если под действительным URL вы подразумеваете тот, который не 404, то вы можете использовать get_headers() и искать 404 в первом возвращенном элементе массива.

$url = 'http://google.com';
list($status) = get_headers($url);
if (strpos($status, '404') !== FALSE) {
   // URL is 404ing
}

В качестве альтернативы вы можете найти 200, который был бы нормальным счастливым запросом:)

3 голосов
/ 23 апреля 2011

попробуйте это:

//checking if the site exists by fopen, instead of file_get_contents to speed it up

$url = "URL"; //your url goes in this place instead of nabtron.com

if (@fopen($url,"r")) {
echo "<b>".$url."</b> is accessible<br />";
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...