Василий Наумкин

Василий Наумкин

С нами с 08 декабря 2012; Место в рейтинге пользователей: #1

Настройка DKIM и SPF на Ubuntu 12.04 + Sendmail

DKIM — это цифровая подпись писем, отправляемых с вашего сервера. Она гарантирует, что письмо отправлено именно с него, и не было изменено.

Наличие DKIM на отправляемой корреспонденции крайне положительно сказывается на прохождении antispam тестов, поэтому лучше бы её настроить.

Краткий принцип работы заключается в том, что на сервере лежит закрытый ключ, которым подписываются исходящие письма. Удалённый почтовый сервер (Яндекс или Google) при получении письма видит в заголовках эту подпись и проверяет ее путем запроса открытого ключа из DNS домена.

Пример заголовка с DKIM:
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=modx-test.com; s=mail;
	t=1378025116; bh=E27pqP5aWa/XXOeVzzjMW+iw0W7wbbCe2B4toIRxP9M=;
	h=To:Subject:Date:From:Reply-To:From;
	b=GqprdvEYgq/Ff95fCDNzV4k1JLaMA9Pz5p5PUyv2bI0UVZ/S1xl6IyAZK4j3FwMCW
	 5cLe4IGcmnd+dNzNhe2bSj/kCIJg7ZyLM3mXAzEirGXdiqCc/LAZQOGR7udbMmm5YP
	 42pkMa2lI9FqKxAKq5BrtXbrWE+n+Mxc5dpQcGMw=
Если подпись, сгенерированная сервисом, используя содержимое письма и открытой подписи совпадает с той, что указана в заголовке, значит — письмо настоящее и его не модифицировали после отправки с родного сервера.
Если нет — это подделка и, скорее всего, спам.

Под катом пошаговое how-to с картинками, для серверов, настроенных по этой инструкции, как научить Sendmail работать с DKIM.
Василий Наумкин
01 сентября 2013, 09:04
modx.pro
6
23 388
0

Скидки на 17-18 августа

Отсутствуют.

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

Займёмся другими делами.
Василий Наумкин
16 августа 2013, 16:17
modx.pro
1 103
0

Апгрейд modx-test.com и очередные скидки

Сегодня у меня сразу две хорошие новости:

1. Для сайтов modx-test.com открыт полный доступ ко всем платным дополнениям из нашего репозитория, на пробу.

Не нужно больше задавать вопросы «а может ли компонент x делать y» — нужно просто создать свой сайт и загрузить интересующее вас дополнение, для пробы.

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

2. Традиционные выходные скидки сегодня на прославленный mSearch2 и Office — за компанию.
Василий Наумкин
02 августа 2013, 16:19
modx.pro
1 758
0

Скидки 27 - 28 июля

Изо всех сил стараемся внедрить новую традицию скидок у нас в магазине. Врать не буду, пример берем в Playstation Store и Google Play.

Итак, сегодня распродаём компонент синхронизации товаров MS2 и 1С — МойСклад — всего за 990р. Заодно добавляем бонус — бесплатную загрузку компонента переоценки товаров msRevaluation.
Василий Наумкин
26 июля 2013, 15:34
modx.pro
1 793
0

Linode увеличили HDD в 2 раза

Я понимаю, что уже надоело, но деваться некуда — они опять сделали это.

Да, подлые Linode, как матерые наркобарыги, не дают нам слезть с иглы великолепного хостинга. На сей раз в ход пошёл особо гадкий приём — бесплатное увеличение HDD в 2 раза (ссылка на оригинальную новость). Причем, увеличивают уже с учетом предыдущих +20%.

Как и в прошлый раз, заходим в админку, кликаем справа на кнопку «Upgrade Available» и распределяем новое место, кликая на имеющийся HDD (нужно будет выключить сервер).

Лично я увеличил своп до 1024мб, на всякий случай, а все остальное отдал на основной раздел — на моём тарифе 1536 диск теперь 72Gb.
Василий Наумкин
25 июля 2013, 17:39
modx.pro
1 552
0

Обновления в магазине

Распродажа дополнений на выходных прошла очень хорошо, так что мы решили продолжать эту новую традицию и пересмотреть ценовую политику.

Итак, изменения:
— Цены, которые были снижены на 30% — 50% в честь открытия магазина, стали постоянными. Товаров дороже 1990р нет.
— Цена на Uploadify временно снижена до 490р.
— Цена на MarkItUp теперь всего 490р.
— Практически каждые выходные мы будем устраивать распродажи дополнений со скидками до 50%.

С чем я всех и поздравляю. Посмотреть новые цены.
Василий Наумкин
22 июля 2013, 10:39
modx.pro
1 171
0

Подавление ошибок php

Некоторое время назад мне сделали замечание, что использовать @ — «плохая привычка». На предложение доказать, что это именно так, я получил ссылку на Хабр, со статьей про управление ошибками.

Окей, наконец-то я узнал, как именно ими управлять, но чем же плоха привычка подавлять сообщения об ошибках, если ты знаешь, что делаешь?

На мой взгляд, плохого здесь нет и быть не может. Применение @ — это такое же управление ошибками, как и функция error_reporting() или директива в php.ini.

Однако, детальный разбор показал несколько иное.
Василий Наумкин
06 июля 2013, 16:45
modx.pro
3
11 256
0

Скрипт установки MODX для Ubuntu

После недавней статьи про настройку сервера было много вопросов, касающихся всяких мелочей. Поэтому я поднапрягся, и переделал скрипты jkenters для автоматической установки MODx.

Василий Наумкин
03 июля 2013, 04:43
modx.pro
5
5 694
0

Первичный ключ xPDOObject

Как известно, при создании собственных таблиц в MODX принято наследовать или xPDOSimpleObject, или xPDOObject.

Отличие между ними ровно одно — в SimpleObject уже прописан первичный ключ id, а в Object — нет. То есть, если вы хотите, чтобы у вашей таблицы создавалось поле id с становилось primary key — нужно наследовать SimpleObject.

Я, однако, люблю простые таблицы ключ-значение, в которые добавляю первичным ключом два и более полей сразу. Например, в репозитории пакет может быть в нескольких категориях, значит нужно создать таблицу extraCategoryMember из двух полей category_id и package_id.

Ключ id мне здесь совершенно не нужен, ведь он будет расти при каждой операции добавления пакета в категорию, а таких операций может быть очень много. Конечно, вряд ли INT(10) скоро закончится, но зачем хранить лишнее?
Василий Наумкин
11 мая 2013, 12:42
modx.pro
9
5 227
0

Установка компонентов через MODX API

Предлагаю всем желающим готовую функцию для установки компонентов через Api.

Можно делать из консоли, можно из сниппета — не важно. Собственно загрузка файла выделена в отдельную функцию, которая пытается работать через file_get_contents(), если это не запрещено. Иначе использует cUrl.

Параметров всего 2: имя компонента и id провайдера пакетов (по умолчанию — 1, то есть, modx.com).
Василий Наумкин
21 марта 2013, 07:57
modx.pro
8
5 081
0