Django项目部署到阿里云服务器无法发送邮件,发送邮件超时问题解决
前言
今天, 博主将写了好久的一个Django小项目尝试在阿里云部署上线,由于项目中需要发送邮件,博主调用了163邮箱接口,在本地测试邮件功能正常,可是上线后,邮件功能一直超时崩溃。在百度一番查资料后,最后终于得到了解决。
正题
原因:阿里云服务器禁用了25端口,导致无法发送邮件。
[/tip]
先前博主不信阿里云禁用25端口,尝试在阿里云控制台防火墙中解开25端口,结果失败,白忙活一场。不得不得认同可网上 阿里云禁用25端口的说法,25端口申请开放的难度很大。无奈之下,博主直放弃了开启25端口的念头。最后,博主选择了另外一个端口 465端口。 测试后邮件功能完美运行。
注意:博主用的163邮箱的SMTP,其他邮箱适当参考,原理应该差不多。
[/tip]
首先,在 django项目的 settings.py 文件中设置如下:
# 发送邮件的设置
EMAIL_HOST = 'smtp.163.com' # 发送邮件的SMTP服务器
EMAIL_HOST_USER = '你的邮箱@163.com' # 发送邮箱的用户名
EMAIL_HOST_PASSWORD = 'xxxxxx' # 发送邮箱的授权码
EMAIL_PORT = 465 # 端口号 ****** 特别注意 *****
EMAIL_USE_TLS = False # 发送的模式
EMAIL_USE_SSL = True # 加密模式 ****** 特别注意 *****
说明:
邮件默认端口为 25,我们改成 465 ,故修改配置项
EMAIL_PORT = 465
邮件功能需要开启SSL,故增加配置项:
EMAIL_USE_SSL = True # 加密模式 特别注意 *
[/tip]
如果是django使用了django自带的验证模块的需要添加如下代码 :
DEFAULT_FROM_EMAIL = '你的邮箱@163.com' # 默认发送邮件的邮箱,和发送邮箱的用户名相同
如果安装了宝塔面板,去 宝塔面板->安全 点击放行 465端口

若没有安装宝塔面板,去阿里云控制台防火墙 点击放行 465端口

为了不必要的麻烦,避免踩坑,博主在宝塔面板和阿里云控制台都操作放行了465端口。
[/tip]
最后,记得 重启 Django项目,如果还不行就 重启你的服务器 (博主没有重启)

如果还不行,就去你的 域名控制中心 ->点击管理 ->开启SSL证书,然后去阿里云申请一个免费的SSL证书,这样应该就没问题了。
Django项目部署到阿里云服务器无法发送邮件,发送邮件超时问题解决的更多相关文章
- javaWeb项目部署到阿里云服务器步骤
记录web项目部署到阿里云服务器步骤 (使用 web项目.阿里云服务器.Xftp.Xshell),敬请参考和指正 1.将要部署的项目打包成WAR文件格式,可以在MyEclipse.Eclipse都可以 ...
- javaWeb项目部署到阿里云服务器步骤 完整版
记录web项目部署到阿里云服务器步骤 (使用 web项目.阿里云服务器.Xftp.Xshell),敬请参考和指正 1.将要部署的项目打包成WAR文件格式,可以在MyEclipse.Eclipse都可以 ...
- Java Web项目部署到阿里云服务器(ECS)
本篇随笔只是记录博主第一次将自己的Java项目部署到阿里云服务器的大致过程,具体细节还请参考别的博文. 一.项目介绍 我做的项目是利用maven项目构建工具进行搭建基于SSM框架的代码共享管理系统,主 ...
- 如何把php项目部署到阿里云服务器window server2012__含公网ip访问时jquery/ajax失效解决办法
记一次蛋疼的折腾. 弄了一晚上最后发觉是360浏览器的问题,换个浏览器就好了.垃圾360用什么IE7文档模式.导致界面和功能失效. 建议大家测试的时候用firefox或者chrome. 项目部署到服务 ...
- 2018.11.7 关于将Web项目部署到阿里云服务器-5个步骤搞定
将Eclipse导出的War包部署到阿里云服务器上,提供给移动端实时的访问 1. 先登录阿里云网站注册账号,选择服务器类型(我用的是 云服务器ECS), 如果你还是在读大学生可享受优惠价,最低好像是9 ...
- 将web项目部署到阿里云服务器上
一.用eclipse将写好的项目打成war包 1.右键点击项目,选择Export 选择打包之后的路径,点击Finsh. 2.购买阿里云服务器 按下图选择 3.设置云服务器防火墙 4.远程连接云服务器 ...
- 记录web项目部署到阿里云服务器步骤
(使用 web项目.阿里云服务器.Xftp.Xshell),敬请参考和指正 1.将要部署的项目打包成WAR文件格式,可以在MyEclipse.Eclipse都可以完成打包,如下图: 2.安装Xshel ...
- 将javaweb项目部署到阿里云服务器
主要步骤:1. 购买阿里云服务器2. 远程连接3. 在云服务器上配javaweb环境:jdk,tomcat,MySQL4. 将项目的war文件放到Tomcat下关于云服务器ECS:如果还想在买服务器之 ...
- vue项目部署到阿里云服务器(windows),Nginx代理!
项目构成: 前端:vue+vant-ui, 数据库:mysql, 后端:node.js 部署方式:nginx代理: 一,首先要拥有自己的服务器,阿里,腾讯都可以,我用的是阿里的: 如果只是做个人项目的 ...
随机推荐
- 关于ModuleNotFoundError: No module named 'xxx' 模块导入失败问题
我在执行数据库迁移命令的时候pycharm报错,提示ModuleNotFoundError: No module named 'ckeditor',但是我确实是导进来了,而且这个包也从settings ...
- Android Kotlin协程入门
Android官方推荐使用协程来处理异步问题.以下是协程的特点: 轻量:单个线程上可运行多个协程.协程支持挂起,不会使正在运行协程的线程阻塞.挂起比阻塞节省内存,且支持多个并行操作. 内存泄漏更少:使 ...
- 定要过python二级选择题第一套
1. 2.https://zhuanlan.zhihu.com/p/199883725 树,队列,二叉树,树的基本回忆 二叉树: 分叉为俩个; 一个是右子树一个是左子树 队列:先进先出 柞:后进先出 ...
- Pycharm软件学生和老师可申请免费专业版激活码
有一种邮箱,叫做教育邮箱,这东西在这个互联网的世界有很大的优惠及特权,在 Jetbrain 这里, 如果你有教育邮箱(没有教育邮箱怎么办?.edu.cn后缀的邮箱)但很多学生.甚至老师都未必有. 你只 ...
- JVM类加载器的分类
类加载器的分类 JVM支持两种类型的类加载器,分别为引导类加载器(Bootstrap ClassLoader)和自定义类加载器(User-Defined ClassLoader). 从概念上来讲,自定 ...
- Go语言之函数
函数就是一块执行特定任务的代码,在输入源的基础上通过一些算法生成预期的输出. 一.函数的声明 Go 语言中的函数声明语法如下: func 函数名(参数名 类型,参数名 类型)(返回值1类型,返回值2类 ...
- Jetpack Compose学习(6)——关于Modifier的妙用
原文: Jetpack Compose学习(6)--关于Modifier的妙用 | Stars-One的杂货小窝 之前学习记录中也是陆陆续续地将常用的Modifier的方法穿插进去了,本期就来详细的讲 ...
- 转载 使用wce进行本地和域的hash注入
参数解释:-l 列出登录的会话和NTLM凭据(默认值)-s 修改当前登录会话的NTLM凭据 参数:<用户名>:<域名>:<LM哈希>:<NT哈希>-r ...
- 巧用优先队列:重载运算符在STL优先队列中的应用
前言 写优先队列优化dijkstra的时候,需要放进优先队列的常常有数值和编号两类,以下介绍让编号捆绑数值放入优先队列的几种方法. 由于过程比较简单,记住代码即可,下面不再讲解,只附上代码,请读者自行 ...
- Dapr逐渐被点燃
Dapr被点燃 Dapr的热度个人认为才刚刚热起来,9月份我写了Dapr + .NET Core实战一共10篇,从基础概念到简单的实战,但是有很多人感兴趣,具体表现在我个人维护的QQ群,人数从80人左 ...