В * NIX вы можете использовать curl
для выдачи простого HEAD
запроса (HEAD
запрашивает только заголовки, а не тело страницы):
curl --head http://myurl/
Тогда вы можете взять только первую строку, содержащую код состояния HTTP (200 OK, 404 Not Found и т. Д.):
curl -s --head http://myurl/ | head -n 1
А затем проверьте, получили ли вы достойный ответ (код состояния 200 или 3 **):
curl -s --head http://myurl/ | head -n 1 | grep "HTTP/1.[01] [23].."
Это выведет первую строку, если код состояния в порядке, или ничего, если это не так. Вы также можете передать это в / dev / null, чтобы не получать вывод, и использовать $?
, чтобы определить, сработало или нет:
curl -s --head http://myurl/ | head -n 1 | grep "HTTP/1.[01] [23].." > /dev/null
# on success (page exists), $? will be 0; on failure (page does not exist or
# is unreachable), $? will be 1
РЕДАКТИРОВАТЬ -s
просто говорит curl
не показывать «индикатор выполнения».