Архивы блога

О глючных «темах», избыточной нагрузке и глюках неизвестного происхождения на блогах

Вот уже не одну неделю копаюсь с парой сайтов, оптимизирую их и правлю баги. Стоит на них вот такая тема, которая при всей своей достаточной навороченности имеет один гагантский глюк! Обнаружил его вчера когда проверил в очень полезном сервисе для каждого вебмастера сколько «весит» главная страница сайта. После проверки у меня мягко сказать «упала челюсть». Более 4,5мегабайт, хотя визуально на сайте вроде все картинки мелкие и не весят столько ни при каком раскладе. Баг зарылся в файле thumb.php в самой теме. Что делает этот файл — создает при первом вызове миниатюры указанных картинок (пути к картинкам прописывает автор при создании поста в отдельном произвольном поле). Далее он все честно складывает в папку своего кэша, но почему то вместо названий файлов с расширениями jpg, png и т.д. нормальных выдает абракадабру без расширений. И ладно бытолько это — в браузер посетителю выдавалась при этом ПОЛНАЯ КАРТИНКА, хотя на экране были показаны эскизы около 100*100пикселей. Это легко было проверить даже вручную вызвав адрес «мини-картинки» в браузере. Начал копаться что к чему и почему. В скрипте обнаружил адрес создателей скипта. Полез на сайт и скачал свежую версию.  Размер файла значительно отличался от того что был в «глючной теме». Скопировал его на сервер в папку темы под именем старого и очистил папку кэша. Загрузил страницу и «челюсть упала» во второй раз. Теперь миниатюры создавались с корректными названиями, нормальных размеров и самое главное отдавались в браузер тоже нормальных маленьких размеров. Прогнал через вышеуказанный сервис страницу повторно и получил результат — вес страницы уменьшился в 5 раз! Не говоря о том что на неповоротливый апач лишняя нагрузка в виде постоянной загрузки объемных картинок ни к чему. Да и посетителю это понравится куда больше.

Кроме того я заметил что данный скрипт используется и в некоторых дорогих коммерческих темах, правда не смотрел есть ли там такой же баг — ночью было уже некогда проверять. Сегодня постараюсь выкроить время и потестировать.

Далее в программе
Продолжить чтение →

18 комментариев

Whitelist и другие полезные твики для Bad Behovior

обновлено 3.10.2008
Плагином я очень доволен, что писал и ранее, но любит он с дефолтными настройками «резать лишнее»
Пригодится для всех, кто пользуется этим защитным плагином (для чего — юзайте поиск!).
Мануал будет дополняться в будущем в этой же записи. Это адреса которые не должны блокироваться даже если у них неправильный с точки зрения заголовок запроса. Для известных адресов я указал что это за адрес.
Иногда блокируются плагином различные полезные сервисы некоторых поисковиков которые плагин не знает или роботов типа добробот.ком
Продолжить чтение →

5 комментариев

Как установить Apache2+Nginx*+PHP(FactCGI+eAccelerator)+MySQL+Postfix на Ubuntu 8.0.4 или как ускорить работу сайтов в разы.

Все написанное ниже доступно к применению только на своем сервере либо на виртуальном сервере vps(vds).

Отрывками про это я уже писал не раз, когда пытался настроить все у себя и решил собрать все в кучу что было. Да и для себя думаю тоже пригодится еще не раз.

Имеем «сервер» конфигурации: Материнка S370 на чипсете VIA 693A, Pentium3-1000мгц, ОЗУ 1гб, жесткий диск IDE 80гб

Что было вначале: Голая система Ubuntu, Apache 2.2.28, PHP5.2.4, exim (для почты. нихрена он не работал как надо).
Какая была производительность: Загрузка страниц локально была 5-10секунд, а на объемных страницах до 30секунд. Использование суперкэша давало прирост около 50%, но в админке в WP 2.5+ было работать не очень шустро, особенно в окне создания записей, да и на сайте когда залогинен был суперкэш не работал естественно. ДА и вообще апач «кушал» практически все ресурсы системы (процессор, память) и сайты на сервере легко мог я «положить» сам за пару минут, что и было периодически.

Продолжить чтение →

47 комментариев

Обновил дистрибутив PowerPack WP 2.6.2

Добавил несколько полезных плагинов (перечислены на странице скачивания), обновил устаревшие на текущий день, убрал в переводе из шапки админки «ссылки на форумы» (они все равно есть в подвале админки, а сверху они мешают когда включено много плагинов с отдельными меню верхнего уровня. Это можно сделать и через плагин adminimize, но все равно так лучше на мой взгляд).

Комментарии к записи Обновил дистрибутив PowerPack WP 2.6.2 отключены

Codestyling Localization или «сам себе переводчик»

Как много вопросов на форуме и в комментариях было «как мне подправить перевод темы/плагина/движка» под себя. И вот оно — гениальное решение для тех кто не любит возиться с разным софтом.

Автоматически сканирует все ваши папки движка и выводит все найденные файлы с модулями переводов (PO и MO файлы), которые позволяет удалить или отредактировать прямо не выходя из админки!
Продолжить чтение →

22 комментария

Еще один плагин для улучшения «качества жизни» в админке WordPress

Недавно я уже находил похожий плагин, но у него так и остались некоторые баги с обрезанием заголовка некоторых записей. Сейчас нашел более достойный и удобный аналог. Старые версии как позже вспомнил я пробовал мельком, но они были глючноваты.

Admin Management Xtended

Позволяет практически мгновенно (AJAX), не заходя в редактирование менять у записей/страниц/ссылок/медиафайлов следующие параметры: рубрики, метки, заголовок, короткую ссылку, дату записи, порядок страниц, порядок медиафайлов, переключение видимости-невидимости записей, страниц, ссылок и разрешение/запрет комментирования, быстро переходить к редактированию ревизий записей.

Скачать плагин на сайте автора также там можно просмотреть скринкаст, демонстрирующий работу.

Скачать русификатор admin management xtended (версии 1.8.0). Русификатор теперь сразу в архиве плагина у автора

PS забыл добавить что работает только на WP 2.5 и новее

25 комментариев

Русский WordPress 2.6.5 Lecactus Edition

Русский WordPress 2.6.5

ОБНОВЛЕНО 26 ноября 2008 г. Выпущено внеплановое обновление 2.6.5. Если у вас уже установлена версия 2.6.3, то можете просто скачать патч(обновленные файлы) для обновления 2.6.3 до 2.6.5. Нужно просто распаковать их поверх существующих. Дистрибутив версии 2.6.3 заменен на дистрибутив версии 2.6.5.
Информация об изменениях в версии 2.6.5 по сравнению с 2.6.3
Перевод официальной новости: Обнаружен XSS эксплоит, который к счастью затрагивает только IP-based сервера под управлением Apache 2.x. Если нужно исправить только эту проблему, скопируйте файлы wp-includes/feed.php и wp-includes/version.php из дистрибутива версии 2.6.5 в вашу установленную 2.6.3
Кроме этого исправления есть изменения в других файлах, исправляющие несколько мелких багов:

  1. Первое исправление предотвращает запись метаданных записи в ревизию
  2. Второе предотвращает в XML-RPC получение некорректных типов данных
  3. Третье добавляет некоторую ID sanitization пользователя во время группового удаления комментариев

Имейте в виду, что мы пропускаем версии 2.6.4 и переходим сразу на 2.6.5 с 2.6.3, чтобы избежать путаницы с поддельной 2.6.4 (информация о ней недавно была опубликована в новостях WordPress). Версии 2.6.4 никогда не было и не будет.

ОБНОВЛЕНО 24 октября 2008 г. Выпущено внеплановое обновление 2.6.3. Если у вас уже установлена версия 2.6.2, то скачайте патч для обновления 2.6.2 до 2.6.3

Т.к. ранее здесь располагалась версия 2.6.2, то ниже идет большая часть текста про нее: Данный релиз выпущен для исправления уязвимости в SQL и слабости генератора случайных чисел mt_rand (). Вам обязатательно нужно установить это обновление если вы разрешили регистрацию в своем блоге. Суть проблемы заключается в том, что любой зарегистрированный пользователь в WordPress 2.6.1 и ранее может «сбросить» пароль любого другого пользователя на случайно сгенерированный пароль. Злоумышленник не узнает ваш пароль, но это может доставить вам неудобства при работе с блогом. Однако эта «атака» вместе со слабостью генератора mt_rand() может быть использована для прогнозирования случайно создаваемого пароля. Атака трудна, но теоретически возможна, поэтому разработчики настоятельно рекомендуют установить обновление пользователям WordPress 2.6.1 ( и естественно 2.6).

Продолжить чтение →

380 комментариев

Белый экран (Blank screen) при отправке комментариев

Вот такой прикол заметил во время тестирования одного сайта, который обновлял вчера. Причем проблема была только если комментатор не залогинен. Пользователь оставался на странице SITEURL/wp-comments-post.php без редиректа на страницу где писал комментарий. Такая же проблема на днях обсуждалась на форуме, но по ссылке там ничего конкретно тоже не было ясно, кроме как посмотреть на работу mod_security на сервере, что я сделать не могу.
Полдня пролазил в гугле-яндексе и нашел кучу подобных проблем и кучу совершенно разных решений. И самое смешное на том же сервере если закачать дополнительную директорию с WordPress и там настроить голый сайт то проблемы нет. Попробовал завести голый сайт в корневой папке — там проблема есть. Маразм. Пробовал как рекомендуют менять WWW на NO-WWW адрес в админке, пробовал перемещать WP в папку и указывать урл сайт на корень, но проблема оставалась. И попробовал последний метод, который почему то сразу отбросил когда находил (там была проблема с каким то плагином и тоже говорилось «про почту»)- отключил в настройках админки отправку писем администратору при добавлении нового комментария и вуаля! комментарии сразу стали добавляться без проблем. В чем прикол?

PS глюк присутствовал там на всех версиях 2.5.1-2.6.2 (кстати вышла сегодня, выложу вечером). Старые версии не проверял. Хостинг MCHOST.RU  :cry:

40 комментариев