Как стать автором
Обновить
1
0
Сергей Очкасов @sochkasov

Пользователь

Отправить сообщение

DivShot — онлайн-сервис прототипирования Bootstrap

Время на прочтение1 мин
Количество просмотров74K
DivShot — отличный новый инструмент для работы с Twitter Bootstrap. С помощью него создавать прототипы интерфейсов с использованием популярного CSS-фреймворка стало до безобразия просто.

Читать дальше →
Всего голосов 155: ↑145 и ↓10+135
Комментарии21

Создаем модуль «Новая почта» для Magento (часть 1)

Время на прочтение6 мин
Количество просмотров23K

Оглавление


  1. Создаем модуль «Новая почта» для Magento (часть 1), где мы добавляем новый метод доставки в Magento
  2. Создаем модуль «Новая почта» для Magento (часть 2), где мы учим Magento хранить и синхронизировать с Новой Почтой базу складов


Меня уже не один человек просил написать модуль для самого популярного грузового перевозчика Украины “Новая почта”. Дело это не на один час, поэтому руки никак не доходили. Но недавно я подумал, что если идея востребована, то почему бы не сделать что-то полезное для сообщества, а именно:
1. бесплатный модуль “Новая почта” с открытым кодом для Magento;
2. статью в нескольких частях с подробным описанием процесса.

Статья ориентирована на новичков в Magento, но, возможно, будет интересна и опытным разработчикам. Все исходники можно найти на GitHub: github.com/alexkuk/Ak_NovaPoshta, они дополняются по ходу разработки.

Итак, начнем с постановки задачи. Модуль должен выполнять следующие функции:
1. добавить новый метод доставки в Magento;
2. настройки метода должны позволять задавать различную стоимость доставки для различного суммарного веса посылки (как в методе доставки Table Rates);
3. хранить и синхронизировать с Новой Почтой базу складов;
4. выводить склады Новой Почты в удобном для выбора виде на шаге Shipping Method оформления заказа, по умолчанию выводить только склады в городе пользователя;
5. добавить возможность отслеживания посылки в панель пользователя.
Читать дальше →
Всего голосов 27: ↑21 и ↓6+15
Комментарии12

Fuel UX — элементы управления на Twitter Bootstrap

Время на прочтение1 мин
Количество просмотров28K
Наткнулся недавно на один интересный проект в основе которого лежит Twitter Bootstrap, а так как сейчас делаю интерфейс и в основе именно Bootstrap, то некоторые элементы мне будут очень полезны, я решил поделиться находкой с хабросообществом.
Fuel UX представляет собой набор скриптов и стилей для легких современных интерфейсов. А именно для создания удобных элементов управления.
Fuel UX
Читать дальше →
Всего голосов 63: ↑54 и ↓9+45
Комментарии25

Сниппеты для Twitter Bootstrap

Время на прочтение1 мин
Количество просмотров97K
Фреймворк Twitter Bootstrap уже давно стал одним из самых любимых средств ленивых сторонников быстрого прототипирования и разработки интерфейсов, а где популярность там много разных сторонних интересных штук.
На этот раз я случайно попал на пополняющуюся коллекцию сниппетов.
Думаю многим пригодится, сейчас там набор небольшой (23 штуки), но уже достаточно полезный чтобы поделиться.
Кликабельные картинки:

Интерфейс аля gmail



Читать дальше →
Всего голосов 125: ↑117 и ↓8+109
Комментарии23

Открытая система управления “умным домом” MajorDoMo

Время на прочтение7 мин
Количество просмотров75K
В этой статье я расскажу об одном проекте, которым занимаюсь уже довольно продолжительное время и который с некоторых пор доступен широкой публике. Речь идёт о системе управления “умным домом” MajorDoMo (Major Domestic Module), являющейся центральным блоком комплекса программно-аппаратных решений, которые я, в силу своих скромных возможностей, внедряю в своём домашнем хозяйстве.

image

Но обо всём по порядку…

Читать дальше →
Всего голосов 120: ↑117 и ↓3+114
Комментарии58

Повышаем безопасность стека web-приложений (виртуализация LAMP, шаг 6/6)

Время на прочтение10 мин
Количество просмотров22K

Настройка и использование nginx

Мы завершаем перевод цикла статей сайта cyberciti.biz, посвященного виртуализации LAMP-стэка. Речь в заключительном материале пойдет об установке и настройке реверс-прокси nginx.

nginx — open-source продукт, использующийся не только в качестве веб-сервера или реверс-прокси сервер. За его легковесность и бережное отношение к ресурсам его используют и в качестве балансировщика нагрузки (от тупого round-ribbon, до более осмысленного, но тут все туманно прим.пер.) и/или в качестве прокси-решения для организации доступа к службам виртуальной сети, установленной в предыдущих статьях цикла, через один внешний хост-адреса, например через IP 202.54.1.1 (как это было рассмотренное в примерах прежде).
Читать дальше →
Всего голосов 24: ↑16 и ↓8+8
Комментарии5

Рекомендации для GUI под Android

Время на прочтение1 мин
Количество просмотров23K
Производители обычно выпускают рекомендации для построения GUI под их OS. Дошла очередь и до Google Android:
image
Читать дальше →
Всего голосов 77: ↑65 и ↓12+53
Комментарии52

Как быстро проверить Linux сервер на предмет взлома

Время на прочтение4 мин
Количество просмотров127K
Примерно два года назад я арендовал у одного немецкого хостера не очень мощный сервер на базе Centos 5.2. На нём живут несколько вебпроектов, приносящих некоторую прибыль, и поэтому, я стараюсь присматривать за ним по мере возможности.
На Centos есть стандартный анализатор логов Logwatch, который запускается ежедневно по крону, анализирует содержимое /var/log, делает сводный отчет и присылает его по электропочте. В один прекрасный день я обнаружил в этом отчете запись:

--------------------- yum Begin ------------------------ 
 
 Packages Installed:
    lzo2 - 2.02-3.el5.rf.i386
    dnstracer - 1.8-1.2.el5.rf.i386
    openvpn - 2.0.9-1.el5.rf.i386

---------------------- yum End -------------------------


В тот момент меня она очень смутила, так как в предыдущий день на сервер я не логинился и тем более ничего не устанавливал. Первое, что пришло в голову — сервер был скомпроментирован. Себя я считал уверенным пользователем Linux, однако я растерялся. Благо в тот момент в icq был мой бывший коллега, лучший системный администратор, которого я знаю, и просто очень хороший человек.
Он помог быстро проверить систему. В результате у меня сформировалось краткое HowTo о том, как быстро проверить свой сервер на предмет взлома. Уверен, что многим Храброчитателям оно будет полезно. Предполагается, что пользователь знаком с консолью Linux/Unix.

Читать дальше →
Всего голосов 212: ↑183 и ↓29+154
Комментарии105

Динамический favicon или отображаем карму, не обновляя страницу

Время на прочтение5 мин
Количество просмотров11K
image
У каждого из нас, полагаю, в любимом браузере постоянно открыты несколько вкладок одновременно. Не раз бывают случаи, что и заголовка вкладки не видно — лишь favicon'ки. Но часто они информации, кроме как отображения логотипа сайта, не дают. И, наверное, зря. Но мы постараемся и здесь использовать это место (целых 16px*16px!) так, как хотим. По крайней мере, будем знать, как это можно сделать.
Читать дальше →
Всего голосов 138: ↑133 и ↓5+128
Комментарии54

Почти ОС реального времени — 2

Время на прочтение2 мин
Количество просмотров9.2K
Теперь, когда инструмент готов, его уже можно и нужно использовать.

Предварительно пара слов про Главный Таймер.
Читать дальше →
Всего голосов 26: ↑21 и ↓5+16
Комментарии18

Почти ОС реального времени: event-driven

Время на прочтение7 мин
Количество просмотров12K
Пару слов введения:
Делаю систему контроля на базе AtMega32. Цель — отслеживать значение датчиков температуры и давления, управление нагрузкой и сброс отладочных логов в компьютер.

Плюс экранчик 2х16 символов и клавиатура на 7 клавиш. Аппаратную часть использовал готовую — набор NM8036 от МастерКита. А вот с программной частью засада: стандартный алгоритм, уже прошитый в наборе, примитивен и универсален, исходных кодов прошивки нет, обновления выходят в зашифрованном виде. Пришлось писать самому.

Первоначально рисовал «быстро и грязно» — только чтобы работало. Затем система эволюционировала — усложнялись алгоритмы работы, разрастался интерфейс, увеличилось количество параметров, появилась необходимость обучить другого человека работе с системой. Вносить изменение не порушив старый код становилось все сложнее и сложнее. Плюс некоторые архитектурные недоработки, заложенные с самого начала, очень осложняли жизнь.

На форумах, посвященных программированию микроконтроллеров, наткнулся на упоминание об rtos — операционных системах реального времени. Почитал, скачал пару бесплатных, попробовал и принял решение: написать свое.

Читать дальше →
Всего голосов 75: ↑72 и ↓3+69
Комментарии36

Настройка и оптимизация MySQL сервера

Время на прочтение9 мин
Количество просмотров312K
В этой статье будут описаны различные настройки MySQL, преимущественно те, которые влияют на производительность. Для удобства все переменные разделены по разделам (базовые настройки, ограничения, настройки потоки, кэширование запросов, тайминги, буферы, InnoDB). Сначала уточним имена некоторых переменных, которые изменились в версии 4 MySQL, а в сети продолжают встречаться и старые и новые варианты имен, что вызывает вопросы.
Читать дальше →
Всего голосов 180: ↑171 и ↓9+162
Комментарии19

Анализ проникновения бота через эксплоит в старых версиях phpmyadmin и рекомендации по настройкам безопасности php-хостинга

Время на прочтение11 мин
Количество просмотров12K
Имею на администрировании несколько серверов, на которых хостятся восновном свои проекты, но кроме них ещё довольно много пришлось разместить левых сайтов — клиентов, знакомых, знакомых знакомых и т.п. За время администрирования встречались разные проблемы, поэтому настроены кое-какие мониторинги (zabbix и самописные скрипты).

И вот вчера на одном из серверов скрипт, проверяющий активные соединения, забил тревогу: постоянно висит исходящее соединение на неизвестный хост на порт 433, уже более 9 часов на момент когда я осилил прочитать почту в понедельник утром ;)

При беглом просмотре кроме этого активного соединения больше никаких аномалий и левых процессов в системе не было обнаружено, резкого роста трафика на интерфейсе тоже не обнаружено, но это меня не успокоило, поэтому пришлось выяснять подробнее.

По результатам анализа я выяснил что подобная дыра в безопасности может быть на большинстве серверов с базовыми настройками PHP, поэтому решил сделать пост на хабре чтобы обезопасить остальных владельцев серверов с хостингом от подобных случаев, а также описал способы поиска источников попадания заразы на сервер.
Читать дальше →
Всего голосов 126: ↑123 и ↓3+120
Комментарии67

Мониторинг состояния канала по jitter / packet loss

Время на прочтение4 мин
Количество просмотров42K
Добрый день, коллеги.

Собравшись с мыслями, решил нормально оформить родившееся у меня решение.

Итак, постановка задачи:

Есть два канала между точками А и Б, чаще всего от разных провайдеров. Необходимо обеспечить учет качества обслуживания на данных каналах, а именно:
1. При потерях >0.5% на канале, канал не должен использоваться.
2. При jitter > 10мс, канал не должен использоваться.

Такая задача возникла у меня на работе, поскольку два города соединены двумя каналами, по которым бегает в большом количестве голос, который, как известно, весьма капризен в отношении вышеописанных показателей. Кому интересно — милости прошу под кат.
Читать дальше →
Всего голосов 48: ↑45 и ↓3+42
Комментарии37

Шпаргалка: кеширование картинок, CSS и JS в NGINX

Время на прочтение1 мин
Количество просмотров78K
Заметка для тех, кто не специалист в NGINX, а проблему нужно решить быстро.

Допустим, у вас на сервере стоит NGINX и вы хотите, чтобы вся статика кешировалась у клиента. В конфиге хоста NGINX пропишите это:

server {
listen 80;
server_name mysite.com;
...
# Задаем правила обработки статического контента (типов файлов можно поставить и больше)
location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|pdf|ppt|txt|bmp|rtf|js)$ {
root /path/to/document/root/; # Путь к корню вашего сайта
access_log off; # не пишем логи
expires 3d; # кешируем у клиента на 3 дня
}
}

Проверить можно в FireBug во вкладке NET: обновите страницу 2 раза и посмотрите код ответа. Если 200 ОК, то не работает. Если 304 Not Modified, то работает.

Неплохо ускоряет работу сайта.
Всего голосов 87: ↑52 и ↓35+17
Комментарии30

Защита от DDOS атаки случайными аргументами при помощи Nginx

Время на прочтение1 мин
Количество просмотров3.3K
Я встретился с новым типом ботнета. Если старый долбил только в главную, то новый действует иначе. Он посылает множество запросов вида
GET someurl/?t1555ss5326=5326, где someurl — найденный ботом php скрипт.
Но если атакуемый сайт поддерживает ЧПУ, то такие запросы к нему должны отсутствовать в принципе. ЧПУ сейчас является стандартом де-факто, по этому можно смело отрезать такие запросы, логируя IP ботов.
Для этого очень удобен nginx, и его переменная is_args, которая имеет значение "?", если в URI идут аргументы. Базовая конструкция выглядит так:

if ($is_args = "?") {
return 403 444;
}

Очень просто и красиво, правда?
Вот как выглядит LA после включения этой защиты:
load average: 1.50, 3.09, 6.96
Текущий ботнет из ~20000 зомби, делают 5-8k одновременных запросов.
Всего голосов 94: ↑79 и ↓15+64
Комментарии55

Впечатляющие анимационные эффекты

Время на прочтение2 мин
Количество просмотров115K
С появлением jQuery, у веб-программистов появилась возможность создавать впечатляющие визуальные эффекты, не прибегая к использованию технологии flash. В данной статье представлено несколько ярких примеров того, каких потрясающих результатов можно достичь, используя стандартные средства браузера и свое воображение.
Читать дальше →
Всего голосов 262: ↑246 и ↓16+230
Комментарии78
12 ...
8

Информация

В рейтинге
Не участвует
Откуда
Коломна, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность