Я думаю лишь в скорости обновления. Платную они стараются обновлять чаще.
Так у вас всё отправляется на апатч. С чего ВДРУГ вы решили, что проблема в nginx? :)
Всегда юзал бесплатные, вполне вменяемые.
Я уже JS код дал готовый. Как об стенку.
Ощущение, что мы тут системы АНБ обсуждаем для обнаружения с точностью до метра.
Вы это сами себе голову морочите. Никому ваши RFC и HTTP не вдались.
Тут дело не минуты измерить, а показать разницу в часовых поясах. Вывод полной даты это чисто приколюшка этого сервиса, это не обязательно делать вообще.
Это всё делается в браузере и через JS. Сервер в этом не участвует.
В JS скрипт можно подставить нужный UTC и он покажет время текущее с учётом часового пояса. Минуты там с вашего же компьютера.
Мде... сложно, понимаю. Это вот называется человек в трёх соснах заблудился.
Готовый код, ЕСЛИ уж больно нужно:
<?php header('Content-type: text/html; charset=utf8');$ip = $_SERVER['REMOTE_ADDR']; $page=(file_get_contents('http://api.sypexgeo.net/xml/'.$ip));preg_match('@<utc>(.*?)</@smi',$page,$tmpx);?><html><? echo $ip;?> <br /><span id="old" style="font-size:26pt;"></span><input type="hidden" id="stats" value="<? echo $tmpx[1];?>" /><script>x = new Date()currentTimeZoneOffsetInHours = -x.getTimezoneOffset()/60text='THIS PROXY';if (currentTimeZoneOffsetInHours==document.getElementById('stats').value) {text='CLEAR, NOT PROXY';}document.getElementById('old').innerHTML=text;</script></html>
1. Берём через JS системное время
2. Берём IP и пробиваем по базам, если указан город, узнаем какой час сейчас в нём и выводим
3. Сравниваем 1 и 2 через JS
На каком этапе у вас пазл не складывается?