Django(python)プログラムより、メールを送信する仕組みを考えております。
メール送信する方法を調べていましたら、こちらの方法が該当しましたが、当然かもしれないのですが、メールサーバーが必要とのことでした。
現在検討している方法としましては、メールサーバーをEC2にて一から構築する方法なのですが、その他にもう少し簡単にプログラム内からメール送信を行う方法はないでしょうか。
簡易的にメール送信を行う方法がありましたら、ご助言頂けましたら幸いです。
DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。
サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。
Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。
Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。
Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。
0グッド
1クリップ
投稿2021/01/18 02:35
編集2021/01/18 02:36Django(python)プログラムより、メールを送信する仕組みを考えております。
メール送信する方法を調べていましたら、こちらの方法が該当しましたが、当然かもしれないのですが、メールサーバーが必要とのことでした。
現在検討している方法としましては、メールサーバーをEC2にて一から構築する方法なのですが、その他にもう少し簡単にプログラム内からメール送信を行う方法はないでしょうか。
簡易的にメール送信を行う方法がありましたら、ご助言頂けましたら幸いです。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
回答4件
0
メール送信がSMTPに即した形で行われる限り、残念ながらないでしょう。
一応AWS SESやSendGridなどのサービスを使ってWEB API経由でメール送信はできます。
WEB APIでなくて、それらのサービスをSMTP経由で使用することもできます。
それが求める回答かはわかりませんけれど。
ただ、メールサーバ構築するよりは確実に楽です。
投稿2021/01/18 02:58
総合スコア7653
0
こちらを使うのはいかがでしょうか。
↓
Amazon SES(Simple Email Service)
Amazon EC2 でホストされているアプリケーションから Amazon SES を呼び出した場合、月に 62,000 通のメッセージまでは無料で送信できます。この無料利用枠の有効期限はありません。
python 環境へのインストール
Terminarl
1(venv~) $ pip install boto django-ses 2 3``` 4 5settings.py 6 7```python 8INSTALLED_APPS = [ 9 ・・・ 10 'django_ses', # 追加 11 ・・・ 12] 13 14# Amazon SES関連設定 15AWS_SES_ACCESS_KEY_ID = '***********************' # 環境変数上で指定すべき os.environ.get('AWS_SES_ACCESS_KEY_ID') 16AWS_SES_SECRET_ACCESS_KEY = '*************************' # 環境変数上で指定すべき os.environ.get('AWS_SES_SECRET_ACCESS_KEY') 17EMAIL_BACKEND = 'django_ses.SESBackend'
投稿2021/01/18 02:45
編集2021/01/18 03:05総合スコア1305
0
誰かがやっているメールサーバを借りてくる、という方法が考えられます。
AWS内でも、SESやWorkmailなど、メール系のサービスがいくつかあります。
投稿2021/01/18 02:43
総合スコア147023
0
技術的には、自分所有のSMTPサーバーが無くても、DNSを引いて宛先ドメインのSMTPサーバーのIPアドレスを求め、そこにSMTPプロトコルで直接送りつけることは可能です。
ただ、相手からスパムメールと判定されないための仕組みなど考えないと、送れない相手多数と言うことになります。
「たまたま送れた相手だけ送れれば良い」ということならそれでも良いのですが、AWSを使っていると言うことはおそらく業務利用でしょうから、他の回答の通り、メール送信サービスを使うのが良いです。
独自にSMTPサーバーを立てると言うことも、上記観点からあまりされていないと思います。
投稿2021/01/18 03:48
総合スコア86530
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
2021/01/18 04:35
2021/01/18 08:49
2021/01/18 09:36 編集
2021/01/18 09:59
2021/01/18 11:23