From 34907222804721e62b2e238351fbb2c950700a1e Mon Sep 17 00:00:00 2001
From: Philipp Rieber
Date: Tue, 26 Nov 2013 07:41:26 +0100
Subject: [PATCH 1/3] [Cookbook] New cookbok: How to use the Cloud to send
Emails
---
cookbook/email/cloud.rst | 110 +++++++++++++++++++++++++++++++++++++++
cookbook/map.rst.inc | 1 +
2 files changed, 111 insertions(+)
create mode 100644 cookbook/email/cloud.rst
diff --git a/cookbook/email/cloud.rst b/cookbook/email/cloud.rst
new file mode 100644
index 00000000000..52544a381ca
--- /dev/null
+++ b/cookbook/email/cloud.rst
@@ -0,0 +1,110 @@
+.. index::
+ single: Emails; Cloud
+
+How to use the Cloud to send Emails
+===================================
+
+Requirements for sending emails from a production system differ from your
+development setup as you don't want to be limited in the number of emails,
+the sending rate or the sender address. Thus,
+:doc:`using Gmail `_ or similar services is not an
+option. If setting up and maintaining your own reliable mail server causes
+you a headache there's a simple solution: Leverage the cloud to send your
+emails.
+
+The following example shows how easy it is to integrate
+`Amazon's Simple Email Services (SES)`_ into Symfony. But no matter what
+service you're actually using, there's nothing more to it than configuring an
+SMTP endpoint for Swift Mailer.
+
+In the Symfony configuration, change the Swift Mailer settings ``transport``,
+``host``, ``port`` and ``encryption`` according to the information provided in
+the `SES console`_. Create your individual SMTP credentials in the SES console
+and complete the configuration with the provided ``username`` and ``password``:
+
+.. configuration-block::
+
+ .. code-block:: yaml
+
+ # app/config/config.yml
+ swiftmailer:
+ transport: smtp
+ host: email-smtp.us-east-1.amazonaws.com
+ port: 465 # different ports are available, see SES console
+ encryption: tls # TLS encryption is required
+ username: AWS_ACCESS_KEY # to be created in the SES console
+ password: AWS_SECRET_KEY # to be created in the SES console
+
+ .. code-block:: xml
+
+
+
+
+
+
+
+ .. code-block:: php
+
+ // app/config/config.php
+ $container->loadFromExtension('swiftmailer', array(
+ 'transport' => "smtp",
+ 'host' => "email-smtp.us-east-1.amazonaws.com",
+ 'port' => 465,
+ 'encryption' => "tls",
+ 'username' => "AWS_ACCESS_KEY",
+ 'password' => "AWS_SECRET_KEY",
+ ));
+
+The ``port`` and ``encryption`` keys are not present in the Symfony Standard
+Edition configuration by default, but you can simply add them as needed.
+
+And that's it, you're ready to start sending emails through the cloud!
+
+.. tip::
+
+ If you are using the Symfony Standard Edition, configure the parameters at
+ ``parameters.yml`` and use them in your configuration files. This allows
+ for different Swift Mailer configurations for each installation of your
+ application. For instance, use Gmail during development and the cloud in
+ production.
+
+ .. code-block:: yaml
+
+ # app/config/parameters.yml
+ parameters:
+ # ...
+ mailer_transport: smtp
+ mailer_host: email-smtp.us-east-1.amazonaws.com
+ mailer_port: 465 # different ports are available, see SES console
+ mailer_encryption: tls # TLS encryption is required
+ mailer_user: AWS_ACCESS_KEY # to be created in the SES console
+ mailer_password: AWS_SECRET_KEY # to be created in the SES console
+
+.. note::
+
+ If you intend to use Amazon SES, please note the following:
+
+ * You have to sign up to `Amazon Web Services (AWS)`_;
+
+ * Every sender address used in the ``From`` or ``ReturnPath`` (bounce
+ address) header needs to be confirmed by the owner. You can also
+ confirm an entire domain;
+
+ * Initially you are in a restricted sandbox mode. You need to request
+ production access before being allowed to send to arbitrary
+ recipients;
+
+ * SES may be subject to a charge.
+
+.. _`Amazon's Simple Email Services (SES)`: http://aws.amazon.com/ses
+.. _`SES console`: https://console.aws.amazon.com/ses
+.. _`Amazon Web Services (AWS)`: http://aws.amazon.com
diff --git a/cookbook/map.rst.inc b/cookbook/map.rst.inc
index ece47d25be9..2957912b752 100644
--- a/cookbook/map.rst.inc
+++ b/cookbook/map.rst.inc
@@ -66,6 +66,7 @@
* :doc:`/cookbook/email/email`
* :doc:`/cookbook/email/gmail`
+ * :doc:`/cookbook/email/cloud`
* :doc:`/cookbook/email/dev_environment`
* :doc:`/cookbook/email/spool`
* :doc:`/cookbook/email/testing`
From 4f7c0f32a44bda556dfc795781ee5c114f1ae47e Mon Sep 17 00:00:00 2001
From: Philipp Rieber
Date: Sun, 1 Dec 2013 07:32:10 +0100
Subject: [PATCH 2/3] Fixes and improvements after review
---
cookbook/email/cloud.rst | 47 +++++++++++++++++++++-------------------
cookbook/email/gmail.rst | 29 ++++++++++++++-----------
cookbook/email/index.rst | 1 +
3 files changed, 42 insertions(+), 35 deletions(-)
diff --git a/cookbook/email/cloud.rst b/cookbook/email/cloud.rst
index 52544a381ca..729f4bec208 100644
--- a/cookbook/email/cloud.rst
+++ b/cookbook/email/cloud.rst
@@ -1,7 +1,7 @@
.. index::
- single: Emails; Cloud
+ single: Emails; Using the cloud
-How to use the Cloud to send Emails
+How to use the Cloud to Send Emails
===================================
Requirements for sending emails from a production system differ from your
@@ -38,30 +38,33 @@ and complete the configuration with the provided ``username`` and ``password``:
.. code-block:: xml
-
-
-
-
+ xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd
+ http://symfony.com/schema/dic/swiftmailer http://symfony.com/schema/dic/swiftmailer/swiftmailer-1.0.xsd">
+
+
+
+
.. code-block:: php
// app/config/config.php
$container->loadFromExtension('swiftmailer', array(
- 'transport' => "smtp",
- 'host' => "email-smtp.us-east-1.amazonaws.com",
- 'port' => 465,
- 'encryption' => "tls",
- 'username' => "AWS_ACCESS_KEY",
- 'password' => "AWS_SECRET_KEY",
+ 'transport' => 'smtp',
+ 'host' => 'email-smtp.us-east-1.amazonaws.com',
+ 'port' => 465,
+ 'encryption' => 'tls',
+ 'username' => 'AWS_ACCESS_KEY',
+ 'password' => 'AWS_SECRET_KEY',
));
The ``port`` and ``encryption`` keys are not present in the Symfony Standard
@@ -71,7 +74,7 @@ And that's it, you're ready to start sending emails through the cloud!
.. tip::
- If you are using the Symfony Standard Edition, configure the parameters at
+ If you are using the Symfony Standard Edition, configure the parameters in
``parameters.yml`` and use them in your configuration files. This allows
for different Swift Mailer configurations for each installation of your
application. For instance, use Gmail during development and the cloud in
@@ -95,7 +98,7 @@ And that's it, you're ready to start sending emails through the cloud!
* You have to sign up to `Amazon Web Services (AWS)`_;
- * Every sender address used in the ``From`` or ``ReturnPath`` (bounce
+ * Every sender address used in the ``From`` or ``Return-Path`` (bounce
address) header needs to be confirmed by the owner. You can also
confirm an entire domain;
diff --git a/cookbook/email/gmail.rst b/cookbook/email/gmail.rst
index 11634282f0c..0aff06160b2 100644
--- a/cookbook/email/gmail.rst
+++ b/cookbook/email/gmail.rst
@@ -1,7 +1,7 @@
.. index::
single: Emails; Gmail
-How to use Gmail to send Emails
+How to use Gmail to Send Emails
===============================
During development, instead of using a regular SMTP server to send emails, you
@@ -29,31 +29,34 @@ In the development configuration file, change the ``transport`` setting to
.. code-block:: xml
-
-
+ xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd
+ http://symfony.com/schema/dic/swiftmailer http://symfony.com/schema/dic/swiftmailer/swiftmailer-1.0.xsd">
-
+
+
+
.. code-block:: php
// app/config/config_dev.php
$container->loadFromExtension('swiftmailer', array(
- 'transport' => "gmail",
- 'username' => "your_gmail_username",
- 'password' => "your_gmail_password",
+ 'transport' => 'gmail',
+ 'username' => 'your_gmail_username',
+ 'password' => 'your_gmail_password',
));
You're done!
.. tip::
- If you are using the Symfony Standard Edition, configure the parameters at ``parameters.yml``:
+ If you are using the Symfony Standard Edition, configure the parameters in ``parameters.yml``:
.. code-block:: yaml
diff --git a/cookbook/email/index.rst b/cookbook/email/index.rst
index 7209fbcc652..351301f03e6 100644
--- a/cookbook/email/index.rst
+++ b/cookbook/email/index.rst
@@ -6,6 +6,7 @@ Email
email
gmail
+ cloud
dev_environment
spool
testing
From 6bbbc8a4fb9cafb172a9783f1177829716bdb081 Mon Sep 17 00:00:00 2001
From: Philipp Rieber
Date: Sun, 1 Dec 2013 16:54:27 +0100
Subject: [PATCH 3/3] Fix wording and formatting
---
cookbook/email/cloud.rst | 17 +++++++++++------
cookbook/email/gmail.rst | 3 ++-
2 files changed, 13 insertions(+), 7 deletions(-)
diff --git a/cookbook/email/cloud.rst b/cookbook/email/cloud.rst
index 729f4bec208..3f62afc746b 100644
--- a/cookbook/email/cloud.rst
+++ b/cookbook/email/cloud.rst
@@ -12,10 +12,14 @@ option. If setting up and maintaining your own reliable mail server causes
you a headache there's a simple solution: Leverage the cloud to send your
emails.
-The following example shows how easy it is to integrate
-`Amazon's Simple Email Services (SES)`_ into Symfony. But no matter what
-service you're actually using, there's nothing more to it than configuring an
-SMTP endpoint for Swift Mailer.
+This cookbook shows how easy it is to integrate
+`Amazon's Simple Email Service (SES)`_ into Symfony.
+
+.. note::
+
+ You can use the same technique for other mail services, as most of the
+ time there is nothing more to it than configuring an SMTP endpoint for
+ Swift Mailer.
In the Symfony configuration, change the Swift Mailer settings ``transport``,
``host``, ``port`` and ``encryption`` according to the information provided in
@@ -52,7 +56,8 @@ and complete the configuration with the provided ``username`` and ``password``:
port="465"
encryption="tls"
username="AWS_ACCESS_KEY"
- password="AWS_SECRET_KEY" />
+ password="AWS_SECRET_KEY"
+ />
.. code-block:: php
@@ -108,6 +113,6 @@ And that's it, you're ready to start sending emails through the cloud!
* SES may be subject to a charge.
-.. _`Amazon's Simple Email Services (SES)`: http://aws.amazon.com/ses
+.. _`Amazon's Simple Email Service (SES)`: http://aws.amazon.com/ses
.. _`SES console`: https://console.aws.amazon.com/ses
.. _`Amazon Web Services (AWS)`: http://aws.amazon.com
diff --git a/cookbook/email/gmail.rst b/cookbook/email/gmail.rst
index 0aff06160b2..b37f35a442e 100644
--- a/cookbook/email/gmail.rst
+++ b/cookbook/email/gmail.rst
@@ -40,7 +40,8 @@ In the development configuration file, change the ``transport`` setting to
+ password="your_gmail_password"
+ />
.. code-block:: php
pFad - Phonifier reborn
Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.
Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.
Alternative Proxies:
Alternative Proxy
pFad Proxy
pFad v3 Proxy
pFad v4 Proxy