一、Linux系统中安装Nginx
1、安装依赖包
//一键安装上面四个依赖
yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel
2、下载并解压安装包
//创建一个文件夹
cd /usr/local
mkdir nginx
cd nginx
//下载tar包
wget http://nginx.org/download/nginx-1.20.2.tar.gz
tar -xvf nginx-1.20.2.tar.gz
3、安装Nginx
//进入nginx目录
cd /usr/local/nginx
//进入目录
cd nginx-1.20.2
//执行命令,添加下述模块
./configure
–prefix=/usr/local/nginx
–with-http_stub_status_module
–with-http_ssl_module
–with-http_realip_module
–with-http_gzip_static_module
–with-stream
//执行make命令
make
//执行make install命令
make install
4、配置Nginx.conf
// 编辑配置文件
vim /usr/local/nginx/conf/nginx.conf
将端口号改成8089(随便挑个端口),因为可能apeache占用80端口,apeache端口尽量不要修改,我们选择修改nginx端口。
将localhost修改为你服务器的公网ip地址。
5、启动Nginx
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
重启Nginx
/usr/local/nginx/sbin/nginx -s reload
6、若想使用外部主机访问nginx,需要关闭服务器防火墙或开放nginx服务端口,端口为上一步nginx.conf的配置端口:
centOS6及以前版本使用命令: systemctl stop iptables.service
centOS7关闭防火墙命令: systemctl stop firewalld.service
关闭防火墙会导致服务器有一定风险,所以建议是单独开放服务端口 :
开放8089端口:
firewall-cmd --zone=public --add-port=8089/tcp --permanent
查询端口号8089 是否开启:
firewall-cmd --query-port=8089/tcp
重启防火墙:
firewall-cmd --reload
7、查看nginx进程是否启动:
ps -ef | grep nginx
8、访问该ip:端口 如:http://ip:8089 即可看到nginx界面。
二、Nginx负载均衡搭建示例
使用一台nginx作为负载均衡服务器,两台tomcat作为web服务器;可以把三个服务均在一台机器进行搭建,也可以使用虚拟机虚拟三台机器,然后进行测试。教程这里就只在一台机器进行搭建,采用默认的权重方式进行配置。
1、tomcat 配置
将两台tomcat解压出来,配置完毕相应的端口,然后在webapps目录下创建test目录,然后在test目录中创建index.html文件,随便写入一些内容,两台tomcat中test目录下的index.html文件内容要区分开来,例如写入11111111 / 222222222。
2、nginx配置
首先进行nginx的安装,安装教程参考上述信息
安装完毕后,进入nginx目录下的conf目录,编辑 nginx.conf 文件,修改内容为在http节点下增加
**# 该部分内容与 server 节点同级
upstream tomcat {
server tomcat服务的ip:tomcat服务的端口号;
server tomcat服务的ip:tomcat服务的端口号;
}
server节点下的location /节点中,把默认的
location / {
root html;
index index.html index.htm;
}
修改为
location / {
proxy_pass http://tomcat;
}
然后启动 两台tomcat与nginx服务,在浏览器输入nginx服务的地址:端口,不停刷新页面,就可以看到每次请求的服务器发生了改变。