2014-06-20 1 views
0

내 프로젝트에서 주문을 성공적으로 생성 한 후 <cfmail>을 사용하여 사용자에게 주문 확인서를 보냅니다. 나는 의심이 하나있다. 그 시간 동안 메일 서버가 다운되면 cftry 및 cfcatch를 사용하여 해당 상황을 처리 할 수있는 방법이 있습니까? 아니면 이러한 오류를 처리하지 못합니까?cfmail을 사용하여 예외를 처리하는 방법은 무엇입니까?

+0

메일 서버에 문제가있는 경우, cfcatch에 무엇을 넣으시겠습니까? –

+0

@DanBracuk : 메일을 성공적으로 전송했는지 여부를 감지하는 데 도움이 될 수 있도록 어딘가에서 기록 할 수 있다고 생각합니다. – user3427540

+0

글쎄, 적어도 당신은 누군가가 당신에게 메일을 보낼 것이기 때문에 누군가에게 알렸을 것이라고 말하지 않았다. 그러나 로그 파일을 볼 수있는 경우 스풀 및 전달할 수없는 파일의 내용을 볼 수도 있습니다. 시간과 노력이 적게 든다. –

답변

1

일반적으로 spoolenable을 사용하면 전자 메일은 스풀로 이동하고 필요한 모든 필드가 입력되고 유효한 한 실제로 메일이 전송되는지 여부를 처리합니다.

https://wikidocs.adobe.com/wiki/display/coldfusionen/cfmail

스풀이 위키

에서 세부 사항을 사용

spoolenable 옵션 메일 스풀 또는 항상 즉시 보내할지 여부

. ColdFusion Administrator Spool 메일 메시지를 전달 설정보다 디스크에 우선합니다.

예 : 전송 작업이 완료 될 때까지 메시지 사본을 저장합니다. 이 옵션을 사용하는 페이지는 아니오 옵션을 사용하는 페이지보다 느리게 실행될 수 있습니다.

no : 작업이 완료 될 때까지 복사본을 저장하지 않고 보낼 메시지를 대기열에 넣습니다. 이 옵션이 No 일 때 전달 오류가 발생하면 ColdFusion은 응용 프로그램 예외를 생성하고 mail.log 파일에 오류를 기록합니다.

+0

그래서 만약 내 메일 서버가 다운되어 있고'spoolenable = false'가 cfmail에 있다면, 나는 그것이 예외를 던질 것이라고 생각한다. 맞습니까? – user3427540

+0

주목해야 할 것은 이메일을 스풀링하면 곧바로 보낼 수 없다는 점입니다. 전자 메일은 대기열에 추가되고 주기적으로 전송됩니다. – Will

관련 문제