如何为odoo15网站应用添加域名以及邮箱设置
1. 内容介绍
odoo在服务器上安装好后,是通过IP地址加端口的方式访问的(例如:http://43.159.48.232:8069/ )。实际应用的时候,IP地址和端口不好记。同时网站的功能也得需要一个网站地址。这篇文章主要介绍步骤就是通过安装Nginx, 启用SSL并设置80端口自动转向odoo的默认端口8069。然后还介绍了如何设置odoo的邮箱,设置好后就可以通过odoo代发邮件和收邮件。
2. 域名添加解析
首先在自己的域名控制台,添加域名解析到IP地址。
这个解析则是用于邮箱(腾讯企业邮箱)。
3. 申请一个免费的SSL证书
3.1 什么是SSL证书
SSL证书通过在客户端浏览器和Web服务器之间建立一条SSL安全通道。Secure socket layer(SSL)安全协议。由于SSL技术已建立到所有主要的浏览器和WEB服务器程序中,因此,仅需安装服务器证书就可以激活该功能了,即通过它可以激活SSL协议,实现数据信息在客户端和服务器之间的加密传输,可以防止数据信息的泄露,保证了双方传递信息的安全性,而且用户可以通过服务器证书验证他所访问的网站是否是真实可靠。
3.2 申请腾讯云免费SSL
申请地址:https://console.cloud.tencent.com/ssl
选择证书类型:免费版
选择算法类型和绑定的域名。
对绑定的域名进行认证。在域名控制台,添加相关的记录。
添加记录后,等待签发。(一般过一段时间后刷新就可以了。)
申请成功后就可以下载证书。
选择Nginx服务器类型下载。
下载后解压的文件内容如下:
上传文件(sunion.tech.key 和 sunion.tech_bundle.crt)到服务器目录下,这里放在这个目录下:/etc/tencentss 。这里可以在服务器上创建目录,需要修改目录权限后,然后通过WinSCP上传两个文件。
进入目录 创建文件tencentssl
cd /etc
sudo mkdir tencentssl
修改目录tencentssl的权限
sudo chmod 777 tencentssl
文件上传结束后 再把权限改回755
sudo chmod 755 tencentssl
目录权限修改为777后才可以上传,上传完成后再把权限改回来。
3.3 安装Nginx
sudo apt update
sudo apt-get install nginx
创建配置文件
sudo nano /etc/nginx/sites-enabled/sunion.tech
添加以下内容(注意sunion.tech部分修改,还有证书存放位置)
# Odoo servers
upstream odoo {
server 127.0.0.1:8069;
}
upstream odoochat {
server 127.0.0.1:8072;
}
# HTTP -> HTTPS
server {
listen 80;
server_name www.sunion.tech sunion.tech;
rewrite ^/(.*)$ https://sunion.tech:443/$1 permanent;
}
# WWW -> NON WWW
server {
listen 443 ssl http2;
server_name www.sunion.tech;
#输入证书存放位置
ssl_certificate /etc/tencentssl/sunion.tech_bundle.crt;
ssl_certificate_key /etc/tencentssl/sunion.tech.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
#按照这个协议配置
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
#按照这个套件配置
ssl_prefer_server_ciphers on;
return 301 https://sunion.tech$request_uri;
}
server {
listen 443 ssl http2;
server_name sunion.tech;
proxy_read_timeout 720s;
proxy_connect_timeout 720s;
proxy_send_timeout 720s;
# Proxy headers
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
# 输入证书存放位置
ssl_certificate /etc/tencentssl/sunion.tech_bundle.crt;
ssl_certificate_key /etc/tencentssl/sunion.tech.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
#按照这个协议配置
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
#按照这个套件配置
ssl_prefer_server_ciphers on;
# log files
access_log /var/log/odoo/odoo-server.log;
error_log /var/log/odoo/odoo-server.log;
# Handle longpoll requests 此处要用IP不要用域名否则会报错
location /longpolling {
proxy_pass http://127.0.0.1:8072;
}
# Handle / requests
location / {
proxy_redirect off;
proxy_pass http://127.0.0.1:8069;
}
# Cache static files
location ~* /web/static/ {
proxy_cache_valid 200 90m;
proxy_buffering on;
expires 864000;
proxy_pass http://127.0.0.1:8069;
}
# Gzip
gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript;
gzip on;
}
修改odoo配置文件
sudo nano /etc/odoo/odoo.conf
#告诉 Odoo 使用代理服务器, 将如下代码段加到最后:
proxy_mode = True
#默认情况下,Odoo 服务监听所有网络接口的8069端口。想要禁止对 Odoo 的直接访问,你可以封锁8069端口,并且强制 Odoo 只监听本地监控 127.0.0.1, 将如下代码段加上
xmlrpc_interface = 127.0.0.1
netrpc_interface = 127.0.0.1
重启系统
sudo reboot
查看Nginx的运行状态
sudo systemctl status nginx.service
正常运行就可以通过https://sunion.tech/来访问了。
参考资料
4. 如何配置邮箱
4.1 通过域名注册腾讯云企业邮箱
这个通过相关教程进行。注册成功后可以创建自己域名后缀的邮箱。
4.2 odoo的代发介绍
odoo的邮箱是代理收发的,默认
收件服务用:[email protected]
发件服务用:[email protected]
首先为odoo系统设立一个专用发件邮箱。(这里设置为:[email protected])从odoo系统发出的所有邮件都会
通过该邮箱“代发”出去。
系统参数设置,系统参数中的 mail.catchall.domain和mail.catchall.alias 构成了catchall邮箱。系统发送邮件
出去的时候,需要指定一个回复邮箱。默认情况下,系统指定catchall 为回复邮箱。如果不设置 catchall 参数,系
统发出去的邮件,对方回复的时候,系统就收不到了(回不到系统来)。
mail.catchall.domain:设置为收发件邮箱的域名(即@后面的部分)
mail.catchall.alias:设置为指定回复的收件邮箱的邮箱名称。
mail.bounce.alias:此参数设置发送/退回邮件的邮箱名称。
即系统发出去的邮箱,被对方“弹回”(收件邮箱不存在、拒收等原因),弹回到此参数设置的邮箱。
可以设置弹回专用的邮箱,也可以简单地设置为发件的那个邮箱。
4.3 odoo邮件配置
首先需要激活邮件服务功能。添加域名sunion.tech。
然后设置收件服务配置(Incoming Email Servers)-- 可以设置多个收件邮箱,可以用于分配到不同的销售,产生不同的动作(Actions to Perform on Incoming Mails)。
然后设置发件服务配置(Outgoing Email Servers)-- 设置1个,且安全与身份验证里的用户名邮箱账号,必须与odoo管理员的登录邮箱账号一致,否则测试连接会报错。
4.4 odoo系统参数修改
先激活开发者模式。
激活开放者模式后,通过Technical--Parameters-System Parameters进入参数设置页面。
设置相关的参数。
bounce:默认退回邮件名
catchall:默认回复邮件名(销售部分,如果指定团队邮箱地址,则会回复到团队邮箱地址)
catchall.domain:域名
default:默认系统发件名(有些提醒之类的内容)
设置完成后就可以进行测试了。
参考资料
-
odoo 邮箱配置 主要参考
-
odoo13 邮件发送功能学习(实验室管理软件 使用email功能) 删除参数配置的方法,存在不能代发问题。