четверг, 24 января 2013 г.

Настройка отправки почты с сайта

Для того что бы с сервера приходили письма не от имени www-data, а например от no-replay@домен.ру, нужно следующее:

в файле
 /etc/php5/apache2/php.ini

находим секцию
sendmail_path = '/usr/sbin/sendmail -t 
и меняем ее на
sendmail_path = '/usr/sbin/sendmail -t -i -fno-reply@my.domain.com -Fno-reply'

Если хотите отправлять почту с использованием exim4, то меняем строку:


sendmail_path = /usr/sbin/exim4 -t -i -fno-reply@my.domain.com -Fno-reply

Как выглядел исходник письмо

ДО изменений:

Delivered-To: alex.kostrukov@gmail.com
Received: by 10.14.95.7 with SMTP id o7csp83458eef;
Thu, 24 Jan 2013 04:07:53 -0800 (PST)
X-Received: by 10.152.144.38 with SMTP id sj6mr1578233lab.48.1359029273462;
Thu, 24 Jan 2013 04:07:53 -0800 (PST)
Return-Path: <www-data@my.domen.com>
Received: from my.domen.com ([144.76.4.246])
by mx.google.com with ESMTPS id l8si26588559eem.225.2013.01.24.04.07.53
(version=TLSv1 cipher=RC4-SHA bits=128/128);
Thu, 24 Jan 2013 04:07:53 -0800 (PST)
Received-SPF: neutral (google.com: 144.76.4.246 is neither permitted nor denied by best guess record for domain of www-data@my.domen.com) client-ip=144.76.4.246;
Authentication-Results: mx.google.com;
spf=neutral (google.com: 144.76.4.246 is neither permitted nor denied by best guess record for domain of www-data@my.domen.com) smtp.mail=www-data@my.domen.com
Received: from www-data by my.domen.com with local (Exim 4.72)
(envelope-from <www-data@my.domen.com>)
id 1TyLav-0004zQ-Ks
for alex.kostrukov@gmail.com; Thu, 24 Jan 2013 16:07:49 +0400
Date: Thu, 24 Jan 2013 16:07:49 +0400
Message-Id: <E1TyLav-0004zQ-Ks@my.domen.com>
To: alex.kostrukov@gmail.com
Subject: тема письма
X-PHP-Originating-Script: 33:mail.php
From: ot.kogo@mail.ru
тело письма

ПОСЛЕ изменений

Delivered-To: alex.kostrukov@gmail.com
Received: by 10.14.95.7 with SMTP id o7csp84047eef;
Thu, 24 Jan 2013 04:20:54 -0800 (PST)
X-Received: by 10.14.184.134 with SMTP id s6mr5724235eem.43.1359030053936;
Thu, 24 Jan 2013 04:20:53 -0800 (PST)
Return-Path: <no-reply@my.domen.com>
Received: from my.domen.com ([144.76.4.246])
by mx.google.com with ESMTPS id n5si41266875eeo.165.2013.01.24.04.20.53
(version=TLSv1 cipher=RC4-SHA bits=128/128);
Thu, 24 Jan 2013 04:20:53 -0800 (PST)
Received-SPF: neutral (google.com: 144.76.4.246 is neither permitted nor denied by best guess record for domain of no-reply@my.domen.com) client-ip=144.76.4.246;
Authentication-Results: mx.google.com;
spf=neutral (google.com: 144.76.4.246 is neither permitted nor denied by best guess record for domain of no-reply@my.domen.com) smtp.mail=no-reply@my.domen.com
Received: from www-data by my.domen.com with local (Exim 4.72)
(envelope-from <no-reply@my.domen.com>)
id 1TyLnZ-00050o-43
for alex.kostrukov@gmail.com; Thu, 24 Jan 2013 16:20:53 +0400
Date: Thu, 24 Jan 2013 16:20:53 +0400
Message-Id: <E1TyLnZ-00050o-43@my.domen.com>
To: alex.kostrukov@gmail.com
Subject: тема письма
X-PHP-Originating-Script: 33:mail.php
From: ot.kogo@mail.ru
тело письма




четверг, 17 января 2013 г.

удаленный запуск команд putty ssh

Для того что бы запустить команду на удаленном сервере ssh использую PUTTY

Создадим файл комманд, назовем command.txt

например нужно перезапустить pppoe соединения:

sudo poff -a
sleep 200
sudo pon dsl-provider
sudo plog
sleep 10

Создаем bat-файл, следующего содержания:
d:\putty\putty.exe -ssh -l LOGIN -pw PASSWD -P 22 -m ПУТЬ\ДО\command.txt АДРЕС_СЕРВЕРА_SHH 

пятница, 11 января 2013 г.

Конвертер офисных документов в jpg

Идея:
создать в сети общую папку, в которую могли бы копировать файлы:
PDF, XLS, ODS, ODT, DOC, DOCX, XLSX, PPT

и тут же получать эти файлы в формате JPG

Решение:

1.Создаем скрипт all2jpg

#!/bin/bash
sstr=`echo $1 | sed 's/\./\_/g'`
DIR=/home/user/share/
{
echo "File: $i"
case "$1" in
*.pdf)
convert "$DIR/$1" "$DIR/$sstr.jpg" >> /dev/null 2>&1
sleep 5
rm "$DIR/$1"
;;
*.doc| *.odt| *.ods| *.xls| *.xlsx| *.doc| *.docx| *.ppt)
libreoffice3.6 --headless --convert-to pdf "$DIR/$1"  --outdir "$DIR"
sleep 6
rm "$DIR/$1"
;;
esac
}

2. Мониторинг появления файлов в директории /home/user/share/Сканы/

Для используется incron
sudo apt-get install incron
Добавляем правило в incron
incrontab -e 
/home/user/share/ IN_CREATE /home/user/scripts/all2jpg #$
Все, теперь при создании файла (указанных в скрипте расширений), скрипт будет запущен, и через некоторое время в место этого файла, появится файл jpg