И еще одна вещь, съевшая у меня половину заслуженного выходного... Иногда встречаются задачи, когда надо по ходу работы постоянно проверять pagarank обрабатываемых страниц. Я для этого дела привык использовать старый добрый класс от David Walsh , однако не так давно мной было замечено, что при выполнении всякого рода батч-проверок PR (проще говоря, когда нужно пробить PR целой кучи страниц) скрипт зависает на стадии исполнения класса без всяких на то комментариев, что не очень приятно. После детального изучения выопроса выяснилось, что такое происходит тогда, когда сокет отваливается в неподходящий момент (что вполне ожиданно, так как, само-собой батч-издевательства над гуглевским сервисами приходится производить через прокси, а прокси бывают разными). Итак, для того что бы скрипт все-таки отлипал и продолжал в таких случаях проверку дальше в него были мной внесены следующие изменения:

1)
$socket = fsockopen(“toolbarqueries.google.com”, 80, $errno, $errstr, 30);
заменено на:
$socket = fsockopen(“toolbarqueries.google.com”, 80);

2)
while(!feof($socket))
{ $data = fgets($socket, 128);
заменено на:
while((!feof($socket)) AND (socket_get_status($socket)['timed_out'] != 1))
{ $data = @fgets($socket);

Кто в теме, тому объяснять не надо, кто не в теме - тем более, но, в общем, теперь пэйжранки чекаются как звери. ))) 
 
Думаю, скоро на фейсбуке мой аккаунт забанят к чертям, поэтому буду все-таки тут отписываться время от времени, а в социалках - поменьше от греха. Начну, пожалуй с некоторых довольно специфических вещей, на которые я, однако, убил довольно существенное количество своего свободного, вероломно украденного от сладкого сна времени. Не уверен, что эта инфа окажется полезной кому-то из моих близких друзей, однако гуглящим в поисках решений страдальцам типа меня - вполне может пригодиться. Итак: довольно интересная ошибка, с которой я столкнулся запуская тестовый проект на фреймворке Yii, подключая к оному PostgreSQL-базу. В конфиге я прописал следующее (этого нет в дефолтно предлагаемых настройках, но без проблем гуглится):

'db'=>array(
'connectionString'=>'pgsql:host=localhost;port=5432;dbname=free',
'username'=>'myusername',
'password'=>'mypassword',
'charset' => 'utf8',
),

База под названием "free" у меня уже была создана но к своем удивлению при попытке запустить генератор моделей Gii, мне упорно стала выдаваться ошибка: "CDbConnection failed to open the DB connection: SQLSTATE[08006]", и это при том, что psql-клиент коннектился с этой базой без всяких проблем. Долго гуглил, пробовал по всякому менять конфиг, как советовали умные люди - ничего не помогало. А, как выяснилось, ларчик открывался довольно просто: не стоило давать имя базе одним из перечисленных тут слов - уж почему клиент пропустил это дело без проблем, я не знаю, но переименование базы данных в один момент решило вышеописанный затык.
Стареем... Тупим... 
 



Саван мрака накрыл эту весну благодаря новому мини-альбому My Dying Bride. Cтарый добрый грустный тяжеляк в очередной раз заполнил пустующие потемки души, обеспечив тем самым ту невероятную гармонию, которой, оказывается не хватало в бесконечной череде всяких утилитарных событий повседневной жизни... Я ничего не курил... Выпил всего полбутылки сухого вина... Просто это действительно так. Аарон обещал всяческое рубилово в этом релизе, но по факту все вышло грустно и меланхолично, про любовь до смерти и после... В общем, то что надо. Рекомендую!