понедельник, 26 сентября 2011 г.

CentOS Apache + DocumentRoot в Home директории

Предположим у нас есть такой конфиг:

ServerAdmin webmaster@localhost
ServerName domainname.tld

Options FollowSymLinks
#AllowOverride None
AllowOverride All


Options Indexes FollowSymLinks MultiViews
#AllowOverride None
AllowOverride All
Order allow,deny
allow from all


ErrorLog /var/log/httpd/domainname-error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/httpd/roomservice-access.log combined



Однако если поместить в /home/domainname index.html, то при попытке открыть страницу получаем 403 PermissionDenied, в error log:
[Mon Sep 26 02:34:00 2011] [error] [client 95.26.196.128] (13)Permission denied: access to /index.php denied

Проблема кроется в Selinux.
Посмотреть статус selinux можно так:
getenforce

Отключить временно:
sudo setenforce Permissive

Отключить постоянно- отредактировать файл /etc/sysconfig/selinux
ps убил битый рабочий день на эту гадость.

пятница, 23 сентября 2011 г.

Convert national tel num to international in OpenOffice

Для того что бы сконвертировать телефонные зоны в national виде(вида 8495 или 810) в international (вида 7495) применяем следующие регекспы на замену:
^8 -> 7
^710 -> ''(пустая строка)

Пример:
8495 -> 7495 -> 7495
810123 -> 710123 -> 123


Единственная ловушка, которая нас может поджидать- это номера вида 710 в изначальном файле. Но в national формате такого быть не должно.

Bash promt & FQDN

Понадобилось мне настроить приглашение в терминале- хочется что бы приглашение выглядело так: "user@fqdnhost:pwd$ ", т.е. в приглашении видно было доменное имя.
При первичном осмотре все казалось просто- заменить в переменной окружения PS1 \h на \H. Однако фокус не удался. Точнее так: на CentOS works like a charm. На дебианаподобных- неработает. В итоге:
echo "\[\e]0;\u@$(hostname -f): \w\a\]${debian_chroot:+($debian_chroot)}\u@$(hostname -f):\w\$ " >> ~/.bashrc

Кроме того проверить вывод комманды hostname -f. Если выводит только имя хоста- смотреть в /etc/hosts. Файл должен начинаться с:
127.0.0.1 localhost
127.0.0.1 hostname.domainname hostname

понедельник, 19 сентября 2011 г.

HP proliant DL120 G7 + CentOS 5.5

При установке, возникает 2 бага:
Bug#1: не видятся жесткие диски.
Solution: Идем в BIOS, Advanced Options -> Sata Controller Options -> Embedded SATA Configuration -> Enable SATA AHCI Support

Bug#2: во время установки в графическом режиме вылетает с неразрешимой ошибкой
Solution: устанавливать в текстовом режиме

вторник, 26 января 2010 г.

Отправка E-mail через Perl.

Наконец то разобрался как правильно выставить кодировку при отправлении почты через MIME::Lite. Данный скрипт использую для отправки сообщения с вложением, для реализации сервиса Fax2Email на базе Asterisk.

#!/usr/bin/perl -w
use strict;
use MIME::Lite;
use MIME::Base64;

(my $to,my $fPath,my $CallerID, my $Date) = @ARGV;

my $subject = MIME::Base64::encode("Вам факс от номера $CallerID");
$subject = "=?utf-8?B?".$subject."?=";

my $message = "Вам пришло новое факсимильное сообщение. $Date с абонентского номера $CallerID, вам было отправлено факсимильное сообщение.";


my $msg = MIME::Lite->new(
From => 'source@mail.ru',
To => "$to",
Subject => "$subject",
Type => 'multipart/mixed',
);

$msg->attach(
Type => 'text/plain; charset=utf-8',
Data => "$message",
);

$msg->attach(
Type => 'image/tiff',
Path => "$fPath",
Filename => 'fax.tiff',
);

$msg->send;
#~ print "message sent!\n";

среда, 13 января 2010 г.