Рубрики
Старье

MySQL и русская кодировка WINDOWS-1251

Сегодня мы рассмотрим, что нужно написать в конфигурационном файле /etc/my.cnf для того, чтобы настроить mysql стандартной сборки на работу с кодировкой utf8 по умолчанию без всякой перекомпиляции.

Рассмотрим пример конфига на основе MySQL 5.x.

В раздел [mysqld] необходимо добавить следующее:

default-character-set=utf8
character-set-server=utf8
collation-server=utf8_general_ci
init-connect="SET NAMES utf8"
skip-character-set-client-handshake

Две последние строки принудительно устанавливают кодировку utf8 для всех запросов.

В раздел [mysqldump] достаточно добавить только

default-character-set=utf8

Этого достаточно, чтобы MySQL работал с windows-1251 кодировкой по умолчанию.

Если же при импорте базы данных вместо русских букв выдаются иероглифы или знаки вопроса, это значит, что дамп был сделан в кодировке, отличной от utf8. Переделайте дамп в utf8 или перекодируйте его в нужную кодировку с помощью утилит iconv или recode.

Рубрики
Старье

Как грамотно закрыть open dns-сервер

Многие уже знакомы с тем, что их сервер по умолчанию является open dns. Насколько это плохо, тема не для этой статьи. Мы просто рассмотрим вариант грамотного закрытия открытых DNS.
Многие уверены, что для устранения этой проблемы достаточно вписать в опции bind recursion no, но впоследствии сталкиваются с тем, что сервер перестает разрешать доменные имена в IP-адресах.
Грамотное закрытие open dns server выглядит так:

Найдите в конфиге bind строку options { и замените ее на данный код:

acl "trusted" {
ПервыйIP;ВторойIP;127.0.0.1;
};
options {
allow-recursion { trusted; };
allow-notify { trusted; };
allow-transfer { trusted; };

Естественно, что если у сервера больше, чем два IP, то их все необходимо перечислить в acl trusted.

Рестартуйте bind и проверьте сервер через www.dnsreport.com.