php функция перекодировки в utf8

Недавно понадобилось перекодировать текст в utf8, в инете нашел функцию и перепилил ее под себя
function win_utf8($in_text) {
$output = "";
$other[1025] = "Ё";
$other[1105] = "ё";
$other[1028] = "Є";
$other[1108] = "є";
$other[1030] = "I";
$other[1110] = "i";
$other[1031] = "Ї";
$other[1111] = "ї";
$other[8470] = "№";
for ($i = 0; $i < strlen($in_text); $i++){
if (ord($in_text{$i}) > 191) {
$output.="&#".(ord($in_text{$i})+848).";";
}else {
if (array_search($in_text{$i}, $other)===false){
$output.=$in_text{$i};
}else {
$output.="&#".array_search($in_text{$i}, $other).";";
}
}
}
return $output;
}
Рубрики: php, Programming · Теги: cp1251, php, utf8
Joomla не меняется шаблон в менеджере шаблонов

Недавно попросили помочь с сайтом под управлением Joomla, в менеджере шаблонов не могли изменить шаблон, т.е. его меняли, ставили по умолчанию, но шаблон оставался дефолтным. Немного погуглив нашел решение этой проблемы нужно закомментировать в application.php строку
JRequest::getCmd('template', $template);
Дело все в том, что joomla позволяет передавать имя шаблона через запрос, а некоторые кучерявые плагины имя шаблона вообще с куками передают.
Рубрики: Joomla · Теги: Joomla, шаблон
Nginx — 413 Request Entity Too Large
Ошибка вылазит при попытке загрузить на сервер файл больше одного мегабайта, причина тому client_max_body_size, который по умолчанию, если не указывать в конфиге, всегда равен 1 мегабайту. Лечится просто, открываем конфиг nginx и дописываем в директиву http {
следующий параметр:
client_max_body_size 2m;
з.ы. можете поставить больше 😉
Рубрики: FreeBSD, WebServer · Теги: 413, FreeBSD, nginx
gmirror raid1 замена жесткого диска
Две простые команды:
# gmirror forget gm0 # gmirror insert gm0 /dev/ad8
где /dev/ad8 — новый винт
после проверяем:
# gmirror status
Должно быть что-то типа этого:
Name Status Components
mirror/gm0 DEGRADED ad4
ad8 (5%)
Не забываем про условия замены винта, размер должен быть не меньше чем размер зеркала, посмотреть можно так:
Читать полностью »
Рубрики: FreeBSD · Теги: gmirror, hdd, raid1, замена
Exim, исключить авторизованных из проверки на dnslists
Открываем файл:
ee /usr/local/etc/exim/vexim-acl-check-rcpt.conf
и добавляем в директиву где у нас проверяеся на dnslists следующее:
!hosts = 127.0.0.1
!authenticated = *
т.е. для авторизированных мы просто не будем проверять на спам
Рубрики: FreeBSD, Сеть · Теги: dnslists, exim, spam
SSMTP — smtp-клиент, эмулирующий работу sendmail
Недавно решил со всех роутеров, собирать протоколы работы скриптов, да и вообще протоколы работы на один почтовый ящик, решил для этого дела использовать ssmtp, кстати .
В общем приступим к настройке легенького smtp сервера.
# cd /usr/ports/mail/ssmtp && make install replace clean && rehash
Далее настраиваем это чудо, топаем в директорию с настройками:
# cd /usr/local/etc/ssmtp
и копируем дефолтовые конфиги:
Читать полностью »
Рубрики: FreeBSD, Сеть · Теги: FreeBSD, mta, smtp, ssmtp
DGS-3100-24TG SNMP CPU OID
Недавно понадобилось со свича DGS-3100-24TG, снимать статистику нагрузки на цпу, и рисовать все это дело в кактусе, много времени потратил на поиск OID нагрузки на цпу. Собственно делюсь найденным:
.1.3.6.1.4.1.171.10.94.89.89.1.7.0
Рубрики: Network · Теги: CPU, DGS-3100-24TG, OID, SNMP