2011-01-31 5 views
2

나는 캠핑을위한 웹 사이트를 만들고 있는데 Perl로부터 이메일을 보내야합니다. 그러나 sendmail는 서버에 설치되지 않으며,이 설치된 경우에만 펄 모듈입니다 :Sendmail을 설치하지 않고 Perl을 사용하여 이메일 보내기

  • 클래스 :: 소품
  • 구성 :
  • 수학 :: 석회질 :: 단위
  • Nagios는 작은 :: 플러그
  • 에 Params : 검증
  • 펄 5.8.8
  • TimeDate

이메일 양식을 Perl 스크립트로 보내는 방법이 있습니까?


는 이미 이것에 대해 웹 호스팅 회사에 전화를하지만 그들은 심지어 펄이 무엇인지 모르는 것 같다. 보자. sendmail. 그 자체가 웹 호스팅 회사라고합니다.

+0

아무도 왜 이것이 downvoted 나에게 말할 수 있습니까? –

답변

8

Net :: SMTP는 핵심 모듈이며 Perl의 모든 설치에 포함되어야합니다.모듈 문서는 전자 메일을 보내는 간단한 예를 보여줍니다. "perldoc Net :: SMTP"를 사용하여 거기에 있는지 확인하고 예제를 확인하십시오.

+0

니스. 아주 좋아. 나는 Perl을 처음 사용하고 있으며, 처음 사용하고 있습니다. 나는 그것이 또한 마지막 시간이기를 바랍니다. :) –

1

다른 모듈을 설치할 수없는 쉬운 방법은 sendmail 모듈의 코드 소스를 프로젝트에 통합하는 것이지만 sendmail 모듈의 라이센스로 허용되는지 여부도 확인해야합니다.

4

분명한 답변 ("hoster 변경") 외에도 확실한 것은 SMTP 클라이언트를 bare perl로 작성할 수 있다는 것입니다. 가장 쉬운 방법은 Net::SMTP을 통합하거나 조금 더 애호가라면 을 perl 코드에 통합하는 것입니다. Pure Perl 모듈은 특별한 설치 과정이 필요 없습니다. 그러나 SMTP 클라이언트를 처음부터 작성하는 것은 어렵지 않습니다.

어느 쪽을 선택하든 실패하면 1 시간 정도 후에 다시 시도하는 방법을 삽입하십시오. 그렇지 않으면 귀하의 사이트는 단순히 greylisting을 사용하는 모든 사람에게 메일을 보낼 수없는 웹 사이트로 이동하게됩니다.

2

새로운 호스팅 회사를 찾으십니까? 또는 적어도 다른 곳에서 이메일 양식을 호스팅 하시겠습니까?

셸에 액세스 할 수있는 경우 로컬 폴더에 모듈을 설치할 수 있어야합니다. 다른 머신에 순수한 perl 모듈을 "설치"한 다음 결과 모듈을 FTP를 통해 호스트에 복사 할 수도 있습니다.

모듈에 대해서는 다음을 사용해야합니다. MIME :: Lite는 SMTP를 사용하여 보낼 수 있으므로 sendmail은 필요하지 않습니다. 그것은 또한 모든 펄 (C 백엔드가 아님)이기 때문에 아마도 그렇게 할 수 있습니다.

위의 작품 중 어느 것도 당신이 직접 SMTP 서버에 연결하지 수 있지만, 당신이 첨부 파일

이 질문은 내가 어떻게 펄에서 뭔가를 할 수 있습니다 "로 더 일반적으로 고쳐 할 수
13

를 보낼 특히 꽤 복잡하면 그 내 시스템에 설치되지 않은 모듈이 필요하며이 상자에 대한 루트 제어 권한이 없기 때문에 시스템 관리자는 협력 할 수 없거나 협력하지 않을 것입니까? "

한 문장으로 가장 좋은 대답은 "local::lib"이지만, Matt Trout의 블로그 게시물 "But I can't use CPAN!"에서 더 많은 옵션을 읽을 수 있습니다.

관련 문제