2011-09-11 3 views
0

나는 특정 가상 호스트로 들어오는 전자 메일을 처리하고 전자 메일 데이터를 매개 변수로 사용하여 외부 스크립트를 호출하는 최선의 방법을 찾고 있습니다. 기본적으로 전자 메일을 보낼 수 있습니다. 호스트의 특정 "개인"전자 메일 주소에 연결하면 자동으로 해당 사이트 데이터베이스에 내용이 삽입됩니다. 현재 exim을 메일 처리기로 설정했습니다.데비안 - 전자 메일 수신시 exim에서 외부 스크립트 호출

답변

0

Procmail은 좋은 일반적인 대답입니다. 귀하의 요구가 매우 구체적이라면 .forward (또는 Exim의 해당 구성 - 정확한 차이점을 정확히 기억하지 못함)에서 직접 스크립트를 작성할 수 있지만 흔히 간단한 .procmailrc 안에 스크립트를 래핑하면 전자 메일 배달에 대한 자세한 내용을 모아 실제 처리에 집중하십시오.

0

exim 단일 파일 구성 구조를 따라야합니다. 라우터 섹션에서 원하는 PHP 스크립트로 이메일을 전송하는 맞춤 라우터를 작성하십시오. 전송 섹션에서 컬을 사용하여 원하는 스크립트로 전달할 수 있도록 사용자 정의 전송을 작성하십시오. 그냥 /etc/exim.cnf 파일에 다음과 같은 구성을 쓰기 :

############ROUTERS 
runscript: 
     driver = accept 
     transport = run_script 
     unseen 
     no_expn 
     no_verify 
############TRANSPORT 
run_script: 
    debug_print = "T: run_script for [email protected]$domain" 
    driver = pipe 
    command = /home/bin/curl http://my.domain.com/mailTest.php --data-urlencode [email protected]$original_domain 

mailTest.php이 당신의 운명 스크립트 될 것입니다 경우.

+0

일반적으로 PHP는 특히 curl을 통해 전환하는 것이이 작업에 이상적이지 않습니다. – tripleee

+0

제 경우에는 여러 목적지로 이메일을 전송해야합니다. 나는 두 드라이버 즉 수락 및 리디렉션을 모두 사용해야했습니다. 나는 이미 언급 한 두 가지를 모두 사용하고 효과적인 작업을 수행하는 유일한 방법을 찾았습니다. –

관련 문제