Старый 26.01.2004, 11:10   #1   
Форумец
 
Сообщений: 13
Регистрация: 26.01.2004

AAS вне форума Не в сети
Question Файл .procmailrc

Имеется почтовый адрес [email protected] и PERL скрипт script.cgi, который находится в /home/login/public_html/cgi-bin/script.cgi
Вопрос:
как правильно прописать файл .procmailrc, чтобы почта, направленная по адресу [email protected], передавалась на обработку скрипту script.cgi ?

Вот так?

:0
* ^[email protected]
| /home/login/public_html/cgi-bin/script.cgi

Поправьте меня, пожалуйста, если неправильно.
Что-то у меня сомнение в последней строке.
  Ответить с цитированием
Старый 26.01.2004, 11:40   #2   
Форумец
 
Сообщений: 791
Регистрация: 09.01.2003

Unforgiven вне форума Не в сети
Если в первой строке под ^TO_ подразумевается ^TO с пробелом, то все нормально.
  Ответить с цитированием
Старый 29.01.2004, 08:34   #3   
Форумец
 
Сообщений: 13
Регистрация: 26.01.2004

AAS вне форума Не в сети
Цитата:
Первоначальное сообщение от Unforgiven
Если в первой строке под ^TO_ подразумевается ^TO с пробелом, то все нормально.
Благодарю за ответ!
Если точно, то файл выглядит так:

:0
* ^To: [email protected]
| /home/login/public_html/cgi-bin/script.cgi

но все равно не работает. Почта на [email protected] приходит напрямую, минуя скрипт. Интересно, а как вообще "уживаются" файлы .forward и .procmailrc ? Дело в том, что у меня для другого скрипта используется файл .forward Он выглядит так:

\login,"|/usr/bin/perl /home/login/public_html/cgi-bin/script1.pl"

и работает нормально. Этот файл всю приходящую на домен почту передает script1.pl

Вот я и думаю: " А какой же файл перенаправляет почту первым?" Если .forward, то можно ли сделать так, чтобы он перенаправлял всю почту кроме [email protected] ? А [email protected] перенаправлял .procmailrc ? Или можно как-то по-другому, например, обойтись одним из этих файлов?

Да, и еще. В каком-то любительском описании .procmailrc я видел что-то подобное:

:0
* ^To: [email protected]
|/usr/bin/perl /home/login/public_html/cgi-bin/script.cgi

Может все-таки нужно добавить /usr/bin/perl ?
  Ответить с цитированием
Старый 29.01.2004, 14:35   #4   
Форумец
 
Сообщений: 13
Регистрация: 26.01.2004

AAS вне форума Не в сети
Почитал еще литературу, кое-что прояснилось. Вот что я понял:

1. Вот такой .procmailrc должен точно работать

:0
* ^To.*[email protected]
| /home/login/public_html/cgi-bin/script.cgi

2. Чтобы он заработал необходимо в .forward прописать что-то
типа
"|IFS=' ';exec /usr/local/bin/procmail USER=login"

Но возникла проблема, как "вписать" это уже в работающий .forward
Попробовал вот так

\login,"|/usr/bin/perl /home/login/public_html/cgi-bin/script1.pl","|IFS=' ';exec /usr/local/bin/procmail USER=login"

не работает. Видимо, где-то ошибся.

Есть какие мысли на этот счет?
  Ответить с цитированием
Старый 29.01.2004, 14:53   #5   
Форумец
 
Сообщений: 791
Регистрация: 09.01.2003

Unforgiven вне форума Не в сети
Насколько я понял, script.cgi сам ничего не делает. В этом случае вариантов два.

1) Подсунуть его исполняющей программе (в даном случае перлу), т. е. как ты сам сказал, сделать в .procmailrc
/usr/bin/perl /home/login/public_html/cgi-bin/script.cgi

2) сделать скрипт /home/login/public_html/cgi-bin/script.cgi исполняемым (его будет исполнять шелл), а в самом начале первой строкой вписать

#!/usr/bin/perl -w

Shell запустит /usr/bin/perl и подсунет ему остальной скрипт.
  Ответить с цитированием
Поиск в теме: 


Опции темы

Быстрый переход:

  Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Support by DrIQ & Netwind