Exim을 사용하여 여러 대상으로 메일 보내기

Exim을 사용하여 여러 대상으로 메일 보내기

메일을 여러 대상, 즉 PHP 스크립트와 사용자의 사서함으로 배달하고 싶습니다. 메일 배달에 Exim을 사용하고 있습니다. 아래와 같이 exim 구성 파일의 라우터 및 전송 섹션을 변경했습니다. 나는 send_to_site라는 사용자 정의 전송을 설계했습니다. 메일 헤더를 PHP 스크립트로 보낼 수 있지만 사용자의 사서함으로 이메일을 보낼 수 없습니다. 내 맞춤형 운송 수단은 다음과 같습니다.

######라우터
catchall_mail:
  driver = accept
  domains = my.server.com
  transport = send_to_site
#####수송
send_to_site:
    driver = pipe
    command = /home/bin/curl http://my.server.com/mailTest.php --data-urlencode "mail@-"
    user = afterlogic
    group = afterlogic
    return_path_add
    delivery_date_add
    envelope_to_add

mailTest.php는 내 PHP 스크립트입니다.

답변1

나는 오랜 시간이 지난 후에 이 문제를 극복했습니다. 라우터 섹션에서는 내가 원하는 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 $local_part@$domain"
     driver = pipe
     command = /home/bin/curl http://my.domain.com/mailTest.php --data-urlencode $original_local_part@$original_domain

mailTest.php는 내 예정된 스크립트였습니다.

답변2

먼저 동사가 있어야 하는 두 개의 라우터를 만들어야 합니다 unseen. 첫 번째 라우터는 메시지를 스크립트로 파이프해야 하고 두 번째 라우터는 사용자의 사서함으로 일반적인 배달을 수행해야 합니다.

답변이 짧아 죄송합니다. 전화로 포스팅합니다.

관련 정보