Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何配置Flask Mail以使用Postfix_Python_Flask_Postfix Mta_Flask Mail - Fatal编程技术网

Python 如何配置Flask Mail以使用Postfix

Python 如何配置Flask Mail以使用Postfix,python,flask,postfix-mta,flask-mail,Python,Flask,Postfix Mta,Flask Mail,我有一个运行Flask应用程序的ubuntu 18.04lts服务器,我需要能够向用户发送确认电子邮件,让他们创建一个帐户。我使用Flask User处理帐户授权/身份验证,我知道它使用Flask Mail处理确认电子邮件 有很多教程介绍如何设置flask mail通过gmail发送电子邮件,我使用了一段时间,但是(和其他smtp客户端)每天最多只能发送(我相信)100封电子邮件,我可能需要处理更多的电子邮件。我发现了ubuntu的postfix,我已经设置好了。然而,我似乎无法确定我需要将哪些

我有一个运行Flask应用程序的ubuntu 18.04lts服务器,我需要能够向用户发送确认电子邮件,让他们创建一个帐户。我使用Flask User处理帐户授权/身份验证,我知道它使用Flask Mail处理确认电子邮件

有很多教程介绍如何设置flask mail通过gmail发送电子邮件,我使用了一段时间,但是(和其他smtp客户端)每天最多只能发送(我相信)100封电子邮件,我可能需要处理更多的电子邮件。我发现了ubuntu的postfix,我已经设置好了。然而,我似乎无法确定我需要将哪些配置传递到我的应用程序才能使其正常工作

我已经看了下面的问题,但它和其他教程似乎已经解决了配置问题

BadHeaderError在Ubuntu服务器上使用带FlaskMail和Postfix的Flask

以下是我的意思的一个例子:

在my config.py中(我需要???项):

我会把这些变量中的大部分放在我的配置文件中,但我不知道这些值应该是什么。假设我配置了后缀来支持TLS

如果需要,我可以提供任何其他相关信息。在init.py文件中,我只是从该文件导入配置


编辑:我知道你不能给我特定的值,我也不是专门为我的机器寻找参数。我只是不知道我在这些字段中需要什么相对值,例如,我需要用户名吗?这是我服务器的名称吗?当前系统用户的名称?密码是我服务器的密码吗?没有密码,因为它是本地的?等等。

我帮不了你多少忙,因为这些值正是你配置Postfix服务器时使用的值

邮件服务器=

e、 g.mail.example.net或您的邮件服务器所在的任何域(localhost,…)

邮件\用户名=\

这是用于身份验证的用户名

邮件密码=

这是身份验证的密码(与您配置为发送电子邮件时在邮件客户端中输入的密码相同)

邮件\默认\发件人=\

这是一个电子邮件地址,例如。info@example.net

邮件端口=

端口后缀正在侦听,例如25或587或您将其配置为的任何端口

邮件使用SSL=??? 邮件使用时间=


如果使用加密,则必须相应地激活它们。e、 g.我的邮件服务器使用TLS,因此我设置了
MAIL\u USE\u TLS=True

???是电子邮件服务器的参数,在本例中为posix服务器。SERVER use te be 127.0.0.1用户名机器用户(或至少posix用户)及其密码,端口必须为25或587。由于它是一个本地主机,您可以使用或不使用SSL和TLS,这是错误的,但最重要的一点是安装并运行postfix,并为您的域进行良好配置。是的,对不起,我想我没有说清楚,我不是专门为我的机器寻找参数。我只是不知道这些字段需要什么相对值,例如,我需要用户名吗?这是我服务器的名称吗?当前系统用户的名称?密码是我服务器的密码吗?没有密码,因为它是本地的?等等。用户名是电子邮件帐户的用户名,密码也是。这取决于您如何配置后缀。如果不需要身份验证,则可以忽略这两个值。
import json

with open('/etc/config.json') as config_file:
    config = json.load(config_file)

class Config:
    MAIL_SERVER = # ??? 
    MAIL_USERNAME = # ???
    MAIL_PASSWORD = # ???
    MAIL_DEFAULT_SENDER = # ???
    MAIL_PORT = # ???
    MAIL_USE_SSL = # ???
    MAIL_USE_TLS = # ???
    SECRET_KEY = config.get('SECRET_KEY')
    SQLALCHEMY_DATABASE_URI = config.get('SQLALCHEMY_DATABASE_URI')
    CSRF_ENABLED = True
    USER_ENABLE_EMAIL = True