А теперь правда о том, почему ЖЖ не работает в Казахстане.
Берём для примера 2 адреса img.livejournal.com и eblaput.livejournal.com
Проверяем пингом:
Обмен пакетами с img.livejournal.com [208.93.0.129] по 32 байт:
Ответ от 208.93.0.129: число байт=32 время=390мс TTL=236
Обмен пакетами с eblaput.livejournal.com [208.93.0.128] по 32 байт:
Превышен интервал ожидания для запроса.
Занятно, адреса рядом, а ведут себя по разному. Под бан попадает всего один адрес, на котором и находятся все дневники пользователей.
Делаем трассировку маршрута до обоих и сравниваем (некоторые промежуточные хопы упустим, что бы не гадить в посте):
Трассировка маршрута к eblaput.livejournal.com [208.93.0.128]
11 181 ms 80.77.96.98
15 325 ms 67.14.24.21
25 343 ms 65.121.112.210
26 * Превышен интервал ожидания для запроса.
27 * Превышен интервал ожидания для запроса.
28 * Превышен интервал ожидания для запроса.
Трассировка маршрута к img.livejournal.com [208.93.0.129]
11 181 ms 80.77.96.98
15 326 ms 67.14.24.21
18 353 ms 65.121.112.210
19 354 ms 208.93.0.129
Вот оно как оказывается. Пакеты проходят по всему пути и банятся на последнем адресе. Странно да? Причём тут Казахстан, если пакеты теряются далеко за пределами РК? А вот сейчас и поясню, как можно сделать из простого бана, такой хитрый рисунок.
Для этого достаточно банить пакеты с сервера ЖЖ (пакеты с адресом отправителя 208.93.0.128). Если бы в РК банили исходящий трафик (запросы от клиента до ЖЖ), то пакет не ушел бы дальше головного роутера КТ. А так получается что при трассировке пакет уходит наружу с TTL равным 1. Доходит до первого узла и возвращается к нам же но не с адресом ЖЖ, а адресом узла до которого хватило TTL. Далее TTL прибавляется на 1 и продолжается до тех пор пока не достигнет конечного адреса. Т.е. весь маршрут пакета нам виден, но как только пакет достигает адреса ЖЖ то при возврате тупо банится на головном роутере Казахтелекома.
Всё просто как оказалось и в тоже время кто бы мог подумать
Сервис переезжает из Сан-Франциско в дата-центр в Монтане. Что характерно в данное время уже можно наблюдать внятный ответ от их сервера, а не пустышку как было до переезда - LiveJournal is currently down due to migration to a new server facility. The window of planned downtime is from 8 AM to NOON PST (4PM to 8PM UTC) on Tuesday, November 18, 2008.
Речь идёт о забаненном ЖЖ и Казахстане. Так и не выяснилось кто кого там забанил, но судя по тому, что переезд по любому сменит IP адреса сервиса, что наверное в данный момент уже произошло и бан ушел в лепту. Т.е. в данный момент бана уже нет. Это говорит о том, что если банил ЖЖ, хотя я не вижу смысла в этом, то они не успели внести изменения в свои чёрные списки. Или же Казахтелеком не отреагировал на смену IP адресов и бан опять же снялся.
Посмотрим что будет после переезда. Поди секретный бан всё таки забудут перебанить.
Что вы думаете по этому поводу?
P.S. ЖЖ открывается нормально 1:30
P.P.S Счастье было не долгим. С утра опять бан
Написал плагин расстановки мягких переносов в словах для WordPress. Ну как написал, взял код Насибуллина Рината (hyphen_words.php) и оформил в виде плагина. Да простит меня автор. Результат работы можете наблюдать у меня в блоге. Отработку видно при text-align:justify. Хотя некоторые и против применения justify.
Интересно как он повлияет на уникальность не уникального контента.
Perenoska (2.54 KB)
Все правки делались в class-phpmailer.php
Не люблю я править код WordPress, но если уже ничего не помогает, то приходится вмешиваться. Для начала обязательно указать ваш реально существующий ящик в переменную
var $Sender = "blablabla@bla.com";
Нужно это для хитро настроенных почтовых серверов получателей, которые проверяют существует ли отправитель на самом деле. Типа защита от спама. Если не указать отправителя, то при отправке письма сервер хостера сам подставит какой ему вздумается ящик и сервер получателя такое письмо не пропустит. Пример адреса если мы его не задаём: Return-Path:val34334@p3slh209.shr.phx3.secureserver.net. Естественно такого почтового адреса не существует.
Далее обнаружен глюк у хостинга godaddy.com
В соответствии с RFC 2822 WordPress разбивает тему письма на фрагменты не превышающие 78байт. Но опытным путём выяснилось, что если фрагментов больше чем 1, то godaddy делает вид что письмо ушло, а сам его херит в неизвестном направлении.
Для этого пришлось обрезать сообщение subject до длины, не превышающей 1 фрагмента. Тупо 35байт указал наугад. Да тема теперь не всегда информативна, но что делать, лучше пусть так чем никак. Для обрезания темы опять же вставляем следующий код чуть выше функции function EncodeHeader:
function truncate_bytes($string, $len) {
if (strlen($string) <= $len) {
return $string;
}
if ((ord($string[$len]) < 0x80) || (ord($string[$len]) >= 0xC0)) {
return substr($string, 0, $len);
}
while (--$len >= 0 && ord($string[$len]) >= 0x80 && ord($string[$len]) < 0xC0) {};
return substr($string, 0, $len);
}
Далее находим строчку:
$x += preg_match_all('/[\000-\010\013\014\016-\037\177-\377]/', $str, $matches);
И вставляем перед ней:
$str = $this->truncate_bytes($str, 35);
На этом всё.

Хотите загадить (заспамить) свою RSS читалку? Нет проблем, подпишитесь на RSS фид yvision.kz. Гарантирую регулярные одни и те же записи к прочтению. В повторы попадают опросы. Да на кой бы оно надо? Уже не один месяц читаю одно и тоже. И еще есть интересная особенность, приходит в фиде анонс, тыкаешь, а его там нет, он обежал хрен знает куда, ищите господа…