2012-04-11 6 views
2

cfmail 태그에 서버와 자격 증명이 사용되는 경우에도 모든 전자 메일이 dev 서버에서 보내지 않도록하고 싶습니다. 메시지를 전달할 수 없도록 스풀에 넣고 읽을 수있게하고 싶습니다.ColdFusion에서 전자 메일을 보내지 못하게하십시오.

Windows 용입니다.

편집 - 이유가 무엇입니까? 현재 관리자는 메일 서버를 더미로 설정했지만 여러 메일 태그에 여러 서버를 지정합니다. 우연히 메일을 보내는 개발자가 한 번 불에 태워서 완전히 비활성화하고 싶습니다.

+0

이거 리눅스인가 이길 수 있니? 또한 [WHYT?] (http://mattgemmell.com/2008/12/08/what-have-you-tried/) – Jakub

+0

이유와 승리를 추가했습니다. 감사. –

+0

그 이유는 무엇입니까 ** 당신이 시도한 것은 무엇입니까 ** 당신의 시도는 아무것도 기재하지 않았습니다. 정보를 보려면 위의 링크를 클릭하십시오. – Jakub

답변

7

나가는 포트 25에 대해 방화벽을 구성 할 수 있습니다 (로컬로 릴레이하는 경우 127.0.0.1도 확인하고 제외해야합니다). iptables 또는 Windows 방화벽을 사용하여 나가는 포트 25 연결을 중지합니다. 귀하의 메시지는 CF에 의해 생성되지만 전달할 수없는 CF 스풀러는 배달 할 수없는 폴더로 반송합니다.

+0

ColdFusion neo XML 또는 사용자 정의 전역 대체에 존재할 수없는 경우에는이 방법이 좋습니다. –

+0

당신이하려는 일에 나는 그것이 유일한 실행 가능한 선택이라고 생각합니다. cfmail 태그를 사용하지 않는 것의 부족 app 서버 구성을 사용하여 수행 할 방법이 없다고 생각합니다. –

+0

그래, 그게 내가 생각했던거야. 메일 태그를 사용하지 않으면 일반적인 액세스 오류가 발생합니다. 그렇지 않은 경우에도 스풀러에서 배달 할 수없는 것으로 끝나는 결과는 없습니다. –

6

cfmail 태그의 수에 따라 cfmail의 추상화로 다시 작성하는 것이 좋습니다. 그러면 cfmail을 조건부로 전역 적으로 비활성화 할 수 있습니다.

한 가지 예는 바로 그 사용 사례를 허용하는 내 자신의 Mailer.cfc입니다. 내가 Mailer.cfc 구체적으로 문제를 해결할 것이라고 생각하지만 http://www.bryantwebconsulting.com/docs/com-sebtools/mailer-cfc.cfm

("시뮬레이션 메일 링"참조), 넓은 포인트는 기능에 대한 추상화 계층을 생성 한 다음에 자신의 행동을 적용 할 수 있다는 것입니다. 이렇게하면 코드를 일부 변경해야 할뿐만 아니라 응용 프로그램에 많은 유연성과 제어 기능을 제공합니다.

+0

멋진 도구와 멋진 문서. –

+0

이것은 기본적으로 제가 꽤 오랫동안 해왔 던 것입니다. 내 application.cfm 또는 application.cfc 내 애플 리케이션의 나이에 따라 변수 Application.DevFlag 있습니다. 그런 다음 모든 이메일을 보내는 데 사용하는 CFC가 있습니다. CFC가 개발 중이라는 것을 알고 있다면 지원 전자 메일 주소가 해당 응용 프로그램의 모든 전자 메일을 무시합니다. 이것은 차례 차례로 나는 전자 우편이 정확한 사람들에게 가고 정확하게 볼 것이라는 점을 보증하게한다. 내 이메일 CFC는 통조림 모양과 같은 다른 요구 사항도 처리합니다. – Snipe656

+0

우리는 dev에있는 서버에서 어떤 이메일도 보내지 않기를 원했기 때문에 같은 문제가있었습니다. 우리도 한번 불에 타 버렸다. 한번 :). 어쨌든, 나는이 접근 방식에 대해 덧글 기반 +1을 추가하려고했습니다.우리는 우리가 사용하는 Mailer.cfc에 보관 된 단일 CFMAIL 태그가 있도록 코드베이스를 업데이트했습니다. dev 모드에서는 메일 링 기능을 해제하는 것이 쉬웠습니다. –

관련 문제