SilverStripe를 사용하여 SMTP를 통한 이메일 구성

3904 단어 phpsilverstripe
SilverStripe CMS를 사용해 본 적이 있다면 대부분이 직관적으로 보일 수 있습니다. 그러나 초보자로서 더 많은 문서가 있었으면 하는 몇 가지 사항이 있을 수 있습니다. 저에게 있어 그 중 하나는 개발 환경에서 mailtrap.io 계정을 사용하도록 CMS를 구성하는 방법이었습니다. 오늘은 그것이 우리가 할 일입니다.

Mailtrap is a service that catches all outbound mails from your application and let you view them on their website. You will see a mail as in most mail clients, with the addition of switching views between different outputs: HTML, HTML-source, Text, and Raw. Suffice to say; this is not something that would be a good idea to use on a production-server. Mailtrap uses SMTP, so when we are configuring here for Mailtrap - the same configurations can be used for your SMTP service with updated values.



다음 환경 변수를 구성합니다(.env 또는 "일급 환경 변수"에 있음).

SS_SEND_ALL_EMAILS_FROM="[email protected]"
APP_SMTP_USERNAME="example"
APP_SMTP_PASSWORD="password"
APP_SMTP_HOST="smtp.mailtrap.io"
APP_SMTP_PORT="2525"


If you are using Mailtrap, you will find your SMTP credentials at https://mailtrap.io/inboxes/ and then click on "My Inbox" or the inbox you want to use for your specific project if you have multiple inboxes. Under "SMTP Settings" -> "Integrations", click on PHPMailer to get a pretty good idea on which values are which.



환경 변수를 구성했으면 구성도 업데이트해야 합니다. 엽니다app\_config\email.yml(또는 존재하지 않는 경우 생성). SMTP를 사용하도록 이메일 서비스를 업데이트합니다.

---
Name: project-emailconfig
After:
  - '#emailconfig'
---

SilverStripe\Core\Injector\Injector:
  Swift_Transport:
    class: Swift_SmtpTransport
    properties:
      Host: '`APP_SMTP_HOST`'
      Port: '`APP_SMTP_PORT`'
      Encryption: tls
    calls:
      Username: [ setUsername, ['`APP_SMTP_USERNAME`'] ]
      Password: [ setPassword, ['`APP_SMTP_PASSWORD`'] ]
      AuthMode: [ setAuthMode, ['login'] ]


이와 같이 SilverStripe를 업데이트한 후에는 dev/build URI를 방문(또는 ?flush 실행)하여 이를 사용하도록 애플리케이션을 업데이트하는 것이 좋습니다. 이것은 분명히 내가 놓친 단계였습니다.

좋은 웹페이지 즐겨찾기