Архив за Март 2009

Вступление.
WordpressИсключительно технический пост, т.к. в комментариях было, что начинал блог с WordPress, а сейчас все про картинки и т.д.

Проблема: PHP случайным образом перестаёт реагировать на внешние запросы.

Сайт работает на WordPressWP SuperCache), web-сервером стоит nginx, php-fpm с 40 дочерними процессами висит в режиме FastCGI. Довольно-таки стандартная конфигурация.

Неоднократно встречаю такие объявления в заголовочных файлах (это особенно характерно для всяких "домашних" криптографических библиотек):

inline uint32_t rol(uint32_t x, uint8_t shift)

В данной статье речь пойдёт о типах int_fastXX_t/uint_fastXX_t из stdint.h.

Мне было интересно потестировать параллельную реализацию шифрования алгоритмом ГОСТ 28147–89 на многоядерных процессорах (с использованием OpenMP, но это тема для отдельной статьи).

Проект CROSSEO представляет собой новую международную биржу ссылок и предназначен для автоматической продажи и покупки ссылок вебмастерами и SEO-оптимизаторами соответственно.

Проект CROSSEO представляет собой новую международную биржу ссылок и предназначен для автоматической продажи и покупки ссылок вебмастерами и SEO-оптимизаторами соответственно.

Специалисты Intel рекомендуют задавать маску соответствия процессоров (известную как CPU affinity mask) для потоков OpenMP, чтобы привязать поток к определённому процессору (или ядру процессора, что в данном случае одно и то же). Как утверждается, это позволяет минимизировать миграцию потоков и снизить стоимость переключения контекста между процессорами.

CHARS="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!@#$%^&*()-_=+\\|/"

Пока только для Intrepid Ibex и архитектуры AMD64.

sudo -i
В WordPress 2.7 появились древовидные комментарии и упростился шаблон comments.php, отвечающий за вывод этих самых комментариев, вместо кучи кода достаточно вписать [code='php'] С одной стороны — здорово!, а с другой стороны... что делать, если хочется добавить свои стили / изменить расположение элементов / заменить аватары gravatar.com на свои? Открываем comments.php (в папкеТемы), находим [code='php'] и […]

Более изящное решение, нежели представленное в первой части (WordPress, FastCGI и редирект 301).

В первой части предлагалось при использовании web-сервера nginx закомментировать проверку на SAPI PHP (if ( php_sapi_name() != 'cgi-fcgi' )). Однако есть лучшее решение.

Более изящное решение, нежели представленное в первой части (WordPress, FastCGI и редирект 301).

В первой части предлагалось при использовании web-сервера nginx закомментировать проверку на SAPI PHP (if ( php_sapi_name() != 'cgi-fcgi' )). Однако есть лучшее решение.

Есть сервер с Debian Lenny на борту. На сервер стоит Apache, MySQL, PHP5 — одним словом, стандартный web-сервер. Плюс XCache и ionCube Loader.

Итак, рассказываю про четыре простых шага, которые нужно выполнить, чтобы получить возможность авторизоваться через OpenID, используя свой аккаунт Google и указывая адрес своего блога (например: gluek.info) при openid-авторизации:

Для того, чтобы процесс стал демоном, программисты используют вызов fork(), например, следующим образом:

chdir("/");

Achtung!

7 марта 2009

Так незатейливо называется простенький плагинчик, позволяющий разместить на сайте срочное объявление или еще что-то, представляющее собой небольшой текст. Особенности: - нет дополнительных запросов к базе; - управление находится прямо на “Доске объявлений”; - предназначен для WP 2.7 Использование: В нужном месте шаблона разместить код <?php if (function_exists(’wp_achtung’)) wp_achtung(); ?> Для раскраски в желаемый цвет можно использовать CSS селектор #achtung. Скачать плагин

Всё-таки удивительная штука WordPress… Сегодня чисто случайно обнаружил, что если PHP работает в режиме FastCGI (например, связка WordPress + nginx + PHP), то все редиректы с кодом 301 (Permanent Redirect) превращаются в редиректы с кодом 302 (Temporary Redirect).

va_list и Segmentation Fault

3 марта 2009

Недавно пришлось вспомнить молодость и программирование на C. В результате столкнулся с одной очень неочевидной ошибкой.

Те, кто программируют под Linux/UNIX, вероятно, знают о функции vsyslog. Её приятной особенностью является то, что вместо переменного количества аргументов она берет фиксированное количество, последним из которых является аргумент типа va_list. Недостаток функции — она не входит в стандарты POSIX (то есть в коде её можно использовать на свой страх и риск — и не забыть добавить проверку на её существование в autoconf).

Комментарий к предыдущей заметке:

Для тех, кто не знает, есть очень удобный трюк, позволяющий подписаться только на интересующую вас информацию в Wordpress-блоге, даже если она не отнесена к одной категории (если отнесена, то еще проще — /category/rss/) — можно подписаться на rss-результаты поиска по блогу, например, все заметки в моем блоге на «HP 514»: