在RHEL / CentOS和Debian / Ubuntu上使用Nginx设置OpenERP(Odoo)9

本教程将指导您如何在基于RHEL / CentOS或Debian / Ubuntu的系统上安装最新稳定版本的Odoo(版本9)

Odoo,原名OpenERP的 ,是用Python编写的一个开源企业资源规划 ERP基于网络的商业软件附带了一套Web应用程序设计的每一个企业,如网站建设者,电子商务模块,计费和会计,人力资源,销售点,客户关系管理,库存模块,在线聊天和许多其他应用程序和功能。

Nginx的服务器的RHEL / CentOS的/ Fedora的于Debian / Ubuntu的系统本教程将指导你如何安装Odoo最新的稳定版本(9版)作为一个反向代理的前端,以便访问网络接口更快,安全和从标准的Web浏览端口,而不需要负担用户使用浏览器重定向端口。

第1步:安装和保护PostgreSQL数据库

1.你开始与Odoo继续安装首先确保您的系统附带提供的软件包之前EPEL资源库 ,以便安装后端PostgreSQL数据库。

还通过发出以下命令确保服务器是最新的最新安全软件包和修补程序:

----------- On RedHat/CentOS based systems ----------- 
# yum update
# yum install -y epel-release
----------- On Debian/Ubuntu based systems ----------- 
# apt-get update && sudo apt-get upgrade # On Debian 

2.接下来,继续安装PostgreSQL数据库服务器,这是一种用于Odoo存储信息的默认数据库。

----------- On RedHat/CentOS based systems -----------
# yum install postgresql-server
----------- On Debian/Ubuntu based systems -----------
# apt-get install postgresql postgresql-client

初始化PostgreSQL数据库。

# postgresql-setup initdb	

现在终于通过发出以下命令来启动PostgreSQL数据库:

----------- On SystemD systems -----------
# systemctl start postgresql
----------- On SysVinit systems -----------
# service postgresql start

作为一个额外的步骤,以确保PostgreSQL的默认用户,其中有一个空密码,为了更改密码发出下面的命令以root权限:

sudo -u postgres psql
postgres=# \password postgres

第2步:安装Odoo 9 - OpenERP

3.为了从官方库安装Odoo 9,第一个创造新的yum软件库文件Odoo包含以下内容:

在CentOS / RHEL系统上

# vi /etc/yum.repos.d/odoo.repo

添加以下摘录到文件odoo.repo

[odoo-nightly]
name=Odoo Nightly repository
baseurl=http://nightly.odoo.com/9.0/nightly/rpm/
enabled=1
gpgcheck=1
gpgkey=https://nightly.odoo.com/odoo.key

在Debian / Ubuntu系统

Debian / Ubuntu的发出以下命令来添加Odoo库:

# wget -O - https://nightly.odoo.com/odoo.key | apt-key add -
# echo "deb http://nightly.odoo.com/9.0/nightly/deb/ ./" >> /etc/apt/sources.list

4.接下来从二进制安装Odoo 9软件。

----------- On RedHat/CentOS based systems -----------
# yum install odoo
----------- On Debian/Ubuntu based systems -----------
# apt-get update && sudo apt-get install odoo

接下来,通过发出以下命令启动它并检查守护程序状态:

----------- On SystemD systems -----------
# systemctl start odoo
# systemctl status odoo
----------- On SysVinit systems -----------
# service odoo start
# service odoo status

作为一个额外的步骤,你可以验证Odoo服务通过运行SS或监听端口的netstat命令:

# ss -tulpn
OR
# netstat -tulpn

默认情况下,Odoo监听端口8069 / TCP网络连接。

第3步:从Web Interface配置Odoo

5.为了配置Odoo进一步火浏览器并访问Odoo网站在下面的URI的界面:

http://host-or-IP-address:8069/

6.接下来会提示你创建Odoo一个新的数据库,并为管理员帐户的强密码。

创建Odoo数据库

创建Odoo数据库

7.一旦数据库被创建,你会被重定向到web管理面板,您可以进一步安装应用程序和配置ERP。 暂时离开应用程序为默认并注销。

Odoo行政Web面板

Odoo行政Web面板

8.一旦返回在登录屏幕,砸在管理数据库链接,以确保Odoo数据库管理器设置一个主密码。

Odoo管理数据库

Odoo管理数据库

设置Odoo数据库管理器密码

设置Odoo数据库管理器密码

设置新的Odoo管理员密码

设置新的Odoo管理员密码

9.一旦你已经获得Odoo数据库管理器,您可以登录您的应用程序,并开始与您所需的应用程序和设置的详细配置。

安装配置Odoo应用程序

安装配置Odoo应用程序

第4步:从Nginx前端访问Odoo

您可以配置系统,以便用户可以通过Nginx反向代理访问Odoo Web面板。 这样可以方便用户浏览Odoo Web界面速度更快,由于一些Nginx的前端缓存,在标准HTTP端口,无需手动输入他们的浏览器的HTTP端口8069。

为了先配置此设置,您需要安装并发出以下步骤,您的系统上配置Nginx的

10.首先安装使用下面的命令Nginx的网络服务器:

----------- On RedHat/CentOS based systems -----------
# yum install nginx
----------- On Debian/Ubuntu based systems -----------
# apt-get install nginx

11.接下来,用文本编辑器打开Nginx的主配置文件和指定Nginx的文档根位置的行之后插入以下块。

----------- On RedHat/CentOS based systems -----------
# vi /etc/nginx/nginx.conf 
----------- On Debian/Ubuntu based systems -----------
# nano /etc/nginx/sites-enabled/default

添加下面的配置摘录nginx.conf文件中:

 location / {
proxy_pass http://127.0.0.1:8069;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;

此外,评论Nginx的location放置一个在下列行前面的语句。 使用以下屏幕截图作为指南。

#location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
#       try_files $uri $uri/ =404;
#}
配置Nginx的Odoo反向代理

配置Nginx的Odoo反向代理

12.你做了上述所有的变化后,重新启动Nginx的守护进程,但你不运行之前getenforce命令是SELinux在您的计算机上启用检查。

在CentOS / RHEL系统上

万一被设置为策略Enforced通过发出以下命令停用:

# setenforce 0
# getenforce

要完全禁用SELinux,开放/etc/selinux/config使用文本编辑器文件和行SELINUX设置为禁用。

在CentOS和RHEL中禁用SELinux

在CentOS和RHEL中禁用SELinux

如果你不想完全禁用Seliux策略,只是想放松规则为了授予Nginx代理与允许访问网络套接字运行以下命令:

# setsebool httpd_can_network_connect on -P
# getsebool -a | grep httpd 

然后,重新启动Nginx守护程序以反映上面所做的更改:

# systemctl restart nginx
OR
# service nginx restart

13.这一步是一个安全可选功能,意味着Odoo应用听,从所有接口(或地址)更改绑定地址只有本地主机网络接口的变化。

此更改必须与Nginx反向代理一起完成,因为在localhost上绑定应用程序只意味着Odoo将无法从LAN或其他网络中的用户访问。

为了活跃的这一变化,开放/etc/odoo/openerp-server.conf文件并编辑xmlrpc_interface线绑定在本地主机上只在下面的截图建议。

xmlrpc_interface = 127.0.0.1
配置Odoo接口

配置Odoo接口

为了反映更改,通过运行以下命令重新启动Odoo服务:

# systemctl restart odoo.service
OR
# service odoo restart

14.如果你的机器有防火墙提供的网络防线,以打开防火墙端口为Nginx的代理外界发出以下命令:

----------- On FirewallD based systems -----------
# firewall-cmd --add-service=http --permanent
# firewall-cmd --reload
----------- On IPTables based systems -----------
# iptables -A INPUT -p tcp -m tcp --sport 80 -j ACCEPT
# iptables -A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT
# /etc/init.d/iptables save
----------- On UFW Firewall systems -----------
# ufw allow http

15.这就是它! 现在您可以通过访问您的服务器IP地址或域名成功访问您的ERP Odoo应用程序。

http://192.168.1.40
http://domain.tld
Odoo Web界面

Odoo Web界面

16.为了在系统重新启动发行后自动运行服务以下命令启用所有守护程序系统范围内与一杆。

------------ On SystemD Systems ------------  
# systemctl enable postgresql.service 
# systemctl enable odoo.service
# systemctl enable nginx.service
------------ On SysVinit Systems ------------ 
# chkconfig postgresql on
# chkconfig odoo on
# chkconfig nginx on

:对于PDF报告,则必须手动下载并通过访问以下链接为自己的配送安装wkhtmltopdf二进制包安装wkhtmltopdf转换HTML页面为PDF