Категория:

WEB

Темы:

WordPress PHP

Сравнение производительности систем PHP 7.0, PHP 5.6.16 и HHVM 3.10.1

Инженеры одного из хостинг-операторов, специализирующегося на размещении сайтов на базе WordPress, опубликовали результаты оценки производительности PHP 7.0 в сравнении с прошлой веткой PHP 5.6 и развиваемой инженерами Facebook виртуальной машины HHVM (HipHop Virtual Machine), снабжённой JIT-компилятором. Следует отметить, что стабильный выпуск HHVM 3.10.1 не является полностью совместимым с PHP 7.0, базовая совместимость с PHP 7.0 пока обеспечена только в экспериментальной ветке HHVM 3.11.

Тестирование проводилось с использованием WordPress 4.3.1, Drupal 8, Magento 2.0 CE, OctoberCMS build 309, PyroCMS v3 beta2, Laravel 5.1.11 и Flarum v0.1.0-beta.4. Во всех тестах, за исключением Laravel, наибольшую производительность продемонстрирвоал HHVM, но отставание PHP 7.0 было не столь существенным, как в случае использования PHP 5.6. Например, в тесте Magento PHP 7.0 и HHVM продемонстрировали 183.87 и 192.19 транзакций в секунду, а в WordPress - 357.69 и 306.24. В тесте Laravel PHP 7.0 даже обогнал HHVM. Тест форумом Flarum провести не получилось, так как его не удалось запустить с HHVM и PHP 7. В тесте Drupal 8 разрыв в производительности оказался почти в два раза 1739.28 у HHVM против 917.10 у PHP 7.0.

 Сравнение производительности PHP 7.0, PHP 5.6.16 и HHVM 3.10.1 -1

Категория:

WEB

Темы:

Joomla Безопасность

Новая критическая уязвимость в Joomla, экстренное обновление 3.4.6

Разработчики свободной системы управления web-контентом Joomla опубликовали экстренное обновление 3.4.6, в котором устранена критическая уязвимость, позволяющая выполнить произвольный PHP-код на сервере. Проблема усугубляется тем, что она уже активно эксплуатируется злоумышленниками и исправлена после выявления массовой вредоносной активности на сайтах под управлением Joomla. Всем пользователям Joomla рекомендуется незамедлительно установить обновление (патчи для уже не поддерживаемых версий) и провести полный аудит своих систем.

Категория:

WEB

Темы:

PHP

ReCaptcha в PhpMyAdmin - HowTo

Совсем недавно, копаясь в коде PhpMyAdmin, обнаружил давно присутствующий в нём (судя по changelog) механизм captcha при авторизации. И не абы что, обходимое через многочисленные сервисы, а Google reCaptcha.

Активировать его можно буквально за минуту — заходим на www.google.com/recaptcha, получаем private- и public-ключи для своего домена и вписываем их в config.inc.php в ячейки «$cfg['CaptchaLoginPrivateKey']» и «$cfg['CaptchaLoginPublicKey']» соответственно. Всё, после этого на странице авторизации появляется дополнительная проверка пользователя.

Почти отличная защита от автоматизированного перебора паролей. «Почти» — потому что разработчики PMA ради удобства пользователей оставили в скрипте не большую брешь. Если в текущей сессии человек проходит проверку reCaptcha, то больше она ему не показывается. То есть для реализации стандартного перебора атакующему необходимо пройти проверку вручную, передать брутеру ID своей сессии и всё, брутер может спокойно работать.

Категория:

WEB

Представлен открытый шрифт Hack 2.0, оптимизированный для отображения кода

Представлен свободный специализированный моноширинный шрифт Hack 2.0, оптимизированный для использования в редакторах кода и обеспечивающий качественное и комфортное для программистов отображение исходных текстов на экранах ноутбуков и ПК. Шрифт включает более 1500 глифов, поддерживает кириллицу и доступен в обычном, жирном, наклонном и жирном наклонном начертаниях.  Представлен открытый шрифт Hack 2.0, оптимизированный для отображения кода -1

Категория:

WEB

Темы:

Joomla CMS

JForm – фильтры полей в формах Joomla

Общая информация

В Joomla! CMS существует множество различных типов полей. Поля добавляются в XML-файлы формы и имеют стандартный набор атрибутов, среди которых нередко можно встретить атрибут filter.

Из названия атрибута несложно догадаться, что он используется для фильтрации введённых пользователем данных. Этот атрибут очень важен в плане безопасности, ведь золотое правило разработчика – никогда не доверяй пользователю и тем более пользовательским данным.

Но, спешу успокоить тех, кто никогда не использовал атрибут filter в формах при разработке расширений. По умолчанию ко всем полям применяется фильтрация, которая удаляет весь HTML-код.

Реализация

Фильтрация полей формы реализуется в методе filter($data, $group=null) класса JForm (/libraries/joomla/form/form.php), где:

  • $data – массив значений полей для фильтрации
  • $group – путь группы формы, разделенный точкой, по которой необходимо фильтровать поля

В методе осуществляется проход по массиву полей текущего объекта формы и для каждого значения элемента массива применяется фильтрация поля с помощью метода filterField($element, $value), где:

  • $element – поле формы, представленное в виде объекта XML-элемента класса SimpleXMLElement
  • $value – значение поля

Непосредственно фильтрация в зависимости от типа фильтра осуществляется либо с помощью класса JFilterInput, либо применяется фильтрация класса JForm, либо вызывается функция обратного вызова (callback), в которой вы можете реализовать свою собственную обработку значения поля.

Категория:

WEB

Темы:

WordPress CMS

Как обычному сайту на Wordpress набрать 99/100 в PageSpeed Insights

Началось все с того что Adsense в очередной раз понизил оценку эффективности страниц:
image
А все мы знаем, что скорость сайта – один из факторов ранжирования в выдаче Гугла.
И если раньше удавалось исправить ситуацию простыми действиями, включить кэширование или сжать JS, то теперь, похоже, пришло время взяться за сайт основательно.
Изначально имеется сайтик со статьями, коих в интернете миллионы: CMS Wordpress 4.2, два десятка плагинов, тема, сверстанная фрилансером и shared хостинг.

Разберем по пунктам, что было исправлено в этом конкретном случае. Уверен, статья будет полезна всем, кто использует WP.
За основу взят скринкаст Алексея Климанова «Как увеличить скорость загрузки сайта», за что ему отдельное спасибо. Однако, WP имеет свои особенности, их мы рассмотрим более подробно.
Окей, Гугл, что не так с моим сайтом?
image

Категория:

WEB

Темы:

Joomla WordPress CMS

Начальные настройки проекта на базе бесплатных CMS

Для конструктивного анализа вашего сайта в первую очередь необходимо на проекте настроить:

  • Вебмастер от Google;
  • Вебмастер от Yandex;
  • Google Analytics;
  • Yandex Метрику.

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

Для экономии вашего времени, мы разберем самые популярные CMS по версии «Рейтинга Рунета», который строится на основе данных аналитического портала «CMS Magazine», и произведем первоначальную настройку проекта. Данный обзор состоит из двух частей. В первой части мы будем рассматривать бесплатные системы управления (open-source):

  • 78223054f98aac81d695da6e75931f00  Drupal
  • ac3274f7d1418959d8791544f1137af5  Joomla!
  • de50ce4739a89cccbae54e88163780ac  MODX
  • 0ec2f14c9e007ba464c230b3ddd98384  WordPress

Но для начала кратко разберем следующие вопросы (те, кто в курсе, могут перейти к основному обзору):

Категория:

WEB

Темы:

WordPress Безопасность CMS

DDoS атака xmlrpc.php WordPress и снижение нагрузки на сервер

Ддос атака xmlrpc.php WordPress и снижение нагрузки на сервер-1 Всем привет. Совсем недавно мне впервые в жизни пришлось столкнуться с самой что ни на есть, настоящей ДДос атакой на свои сайты. И естественно, хостер начал возмущаться, ведь нагрузка на центральный процессор сервера возросла чуть ли не в 10-20 раз. Речь начала заходить о том, что меня уже собрались выселять с хостинга, на котором мои сайты провисели уже с добрые 5 лет. 

Пришлось искать причину столь резко возросшей нагрузки. Выяснял я ее путем запроса к технической поддержке хостинга, чтобы они предоставили мне лог файлы за те дни, когда наблюдались пики нагрузки. После предоставления мне файла, который весил аж 130 Мб, выяснилось, что ддос атака идет на файл xmlrpc.php в WordPress. Буквально каждую секунду кто-то делал пост запрос к этому файлу (кстати если вы не пользуетесь удаленной публикацией, то этот файл совершенно не обязательный)

Категория:

WEB

Темы:

Joomla CMS

NorrCompetition - компонент конкурсов с голосованием за фотографии

norrcompetition-komponent-dlya-golosovanij-za-fotografii

Клуб NorrNext выпустил новое расширение под названием NorrCompetition, при помощи которого вы можете организовать конкурсы с голосованием за фотографии и подведением результатов. Компонент NorrCompetition подходит для различного типа сайтов и позволяет улучшить взаимодействие сайта с посетителями путем проведения голосований на лучшее фото, а благодаря гибким настройкам можно создавать конкурсы на любую тему (конкурс женской красоты, детская улыбка, любимые актеры, спортивная фигура, домашние животные, лучшая картина и т.п.). Добавлена поддержка Bootstrap 2 и UIkit, русский язык из коробки, большое количество настроек.