Получить текущее время веб-сервера - PullRequest
0 голосов
/ 13 февраля 2012

Мне было интересно, можно ли узнать текущее время веб-сервера. Так, например, я хотел бы зайти на какой-нибудь произвольный сайт и узнать текущее время веб-сервера, на котором размещен сайт.

Если это имеет значение, я знаю некоторые php, html и css. И я знаю C ++, хотя сомневаюсь, что это поможет.

Спасибо.

Ответы [ 4 ]

3 голосов
/ 13 февраля 2012
<?php
print_r(get_headers("http://www.google.com"));
?>

выход:

Array
(
    [0] => HTTP/1.0 302 Found
    [1] => Location: http://www.google.co.nz/
    [2] => Cache-Control: private
    [3] => Content-Type: text/html; charset=UTF-8
    [4] => Set-Cookie: PREF=ID=099aa9ac8980212e:FF=0:TM=1329099372:LM=1329099372:S=E_PStXZJPIz2ZMm7; expires=Wed, 12-Feb-2014 02:16:12 GMT; path=/; domain=.google.com
    [5] => Date: Mon, 13 Feb 2012 02:16:12 GMT
    [6] => Server: gws
    [7] => Content-Length: 221
    [8] => X-XSS-Protection: 1; mode=block
    [9] => X-Frame-Options: SAMEORIGIN
    [10] => HTTP/1.0 200 OK
    [11] => Date: Mon, 13 Feb 2012 02:16:13 GMT
    [12] => Expires: -1
    [13] => Cache-Control: private, max-age=0
    [14] => Content-Type: text/html; charset=ISO-8859-1
    [15] => Set-Cookie: PREF=ID=a4441cbc36cea461:FF=0:TM=1329099373:LM=1329099373:S=I6zlXb015nXUM0ht; expires=Wed, 12-Feb-2014 02:16:13 GMT; path=/; domain=.google.co.nz
    [16] => Set-Cookie: NID=56=22IthPMv3iR1hlwH0VkhSNq4imnzW4AhPoKM_3boXysAA-Zf4iM0u8Uv6EeV7coLnW91WQqGXyC9AtR4Snh9IG9kSfZRz8pk_X48VwV6UR0eY4c_UrtT8Wdk2zRyNcgR; expires=Tue, 14-Aug-2012 02:16:13 GMT; path=/; domain=.google.co.nz; HttpOnly
    [17] => P3P: CP="This is not a P3P policy! See http://www.google.com/support/accounts/bin/answer.py?hl=en&answer=151657 for more info."
    [18] => Server: gws
    [19] => X-XSS-Protection: 1; mode=block
    [20] => X-Frame-Options: SAMEORIGIN

)

я бы на это не полагался, чего ты пытаешься достичь?

1 голос
/ 13 февраля 2012

Сделайте обычный (HTTP) запрос к серверу и посмотрите, возвращает ли он поле даты в заголовке ответа. Тем не менее, может находиться в настроенном часовом поясе, поэтому, в то время как это скажет вам, правильно ли установлены часы сервера, оно не скажет вам, какой часовой пояс и, следовательно, время, на котором сервер работает внутренне. Если сервер не возвращает такого значения, реального способа узнать это нет.

0 голосов
/ 12 апреля 2019

Как уже упоминалось, время можно получить по HTTP - используя протокол времени HTTP ( HTP ), который доступен во многих системах как htpdate , хотя, поскольку он использует дату HTTPзаголовок обычно имеет точность только с точностью до 0,5 секунды (точность может быть несколько улучшена с использованием нескольких серверов):

htpdate ntp.org

Также возможно получить время с помощью TLS (который извлекает временную метку из обмена TLS) tlsdate , который может обеспечить лучшую точность:

tlsdate -nV ntp.org
0 голосов
/ 13 февраля 2012

Это возможно, и вам не понадобятся никакие программы для этого:

  1. Установите HTTP-отладчик, например Fiddler , и запустите его для отслеживания вашего HTTP-трафика.
  2. Посетите веб-страницу сервера, который вы хотите проверить.
  3. Выберите запись и посмотрите на заголовки ответа HTTP, вы ищете тот, который называется «Дата», который содержит локальныйвремя, а также часовой пояс сервера.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...