이메일의 보낸 사람 주소를 다시 작성하고 다시 보내려면 어떻게 해야 합니까?

이메일의 보낸 사람 주소를 다시 작성하고 다시 보내려면 어떻게 해야 합니까?

cPanel 웹 호스팅 계정이 있습니다. 이 계정을 사용하면 고객을 위한 PHP 기반 지원/문제 티켓 시스템을 갖게 됩니다. 고객 및 티켓팅 시스템에 이메일을 보내고 싶은데, 티켓팅 시스템으로 보낸 이메일이 전송되지 않는 것 같습니다.~에서내 고객이 생성된 지원 티켓이 자신의 계정에 표시되도록 합니다.

그래서 제가 하고 싶은 것은 [email protected]유닉스 명령이나 쉘 스크립트에 연결되는 이메일 주소를 만드는 것입니다. 이는 내가 에서 및 CC 로 이메일을 보낼 때 쉘 스크립트가 다음을 수행할 수 있어야 함을 [email protected]의미 [email protected]합니다 [email protected].재전송받는 사람[email protected] 하지만 이메일의 "받는 사람:" 주소에서 이메일을 다시 보내세요..

표준 입력에서 이메일을 받아들이고 보낸 사람: 주소를 다시 작성한 다음 새 주소로 이메일을 다시 보내는 쉘 스크립트를 만드는 방법이 있습니까? Procmail이 그런 일을 할 수 있습니까? 아니면 직접 수동으로 코딩해야 합니까?

답변1

프로메일이 함께 제공됩니다.formail메시지 헤더를 조작하는 명령입니다. 이것procmailex사용 예가 포함되어 있습니다 .procmailrc. 이렇게 하면 원하는 대로 작동합니다(테스트되지 않음).

formail -R To: From: -U From: -I Cc: -I 'To: [email protected]'

답변2

Giles의 답변이 거의 다 되었지만 어떤 이유로 파이프를 쳐야 했습니다.formail 두 배. 또한 헤더를 다시 작성한 후 실제로 이메일을 보내야 합니다. 모든 작업을 원활하게 수행하기 위해 다음을 수행했습니다.

  1. 다음을 포함하는 새 파일을 만들었습니다 ~/bin/resend-support.

    #!/bin/bash
    
    /usr/bin/formail -R To: From: | \
      /usr/bin/formail -U From: -I Cc: -I 'To: [email protected]' | \
      /usr/sbin/sendmail -oi -t
    
  2. 파일을 실행 가능하게 만들었습니다( chmod +x ~/bin/resend-support)

  3. [email protected]cPanel에서 파이프로 연결한 이메일 주소 전달자를 만들었습니다 ~/bin/resend-support("Advanced" 아래의 "Pipe to Program" 사용).

[email protected]이제 이메일을 참조로 보내면 파이프를 통해 이메일이 다시 전송됩니다 [email protected].~/bin/resend-support[email protected] ~에서 [email protected]

관련 정보