> 文档中心 > Nginx入门篇1

Nginx入门篇1


nginx简单安装

(1)直接打开官网下载

官网地址:https://nginx.org/en/download.html
在这里插入图片描述

(2)进入官网查找需要下载版本的链接地址,然后用wget命令进行下载

wget https://nginx.org/download/nginx-1.20.2.tar.gz

(3)解压缩

tar -zxvf nginx-1.20.2.tar.gz

在这里插入图片描述
解压完可以看到里面的目录
在这里插入图片描述

(4)配置

./configure

如果执行报错:
【./configure: error: the HTTP rewrite module requires the PCRE library.

在这里插入图片描述
这是缺少依赖包,我们将所有需要的依赖报都安装下

依赖命令

 yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

执行完命令后再次执行下发现没有报错提示了
在这里插入图片描述

(5)编译和安装

make && make install

(6)开机启动

步骤1:先创建个service

vi /usr/lib/systemd/system/nginx.service

步骤2:写入以下命令

[Unit]Description=nginx -  web serverAfter=network.target remote-fs.target nss-lookup.target  [Service]Type=forkingPIDFile=/usr/local/nginx/logs/nginx.pidExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.confExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.confExecReload=/usr/local/nginx/sbin/nginx -s reloadExecStop=/usr/local/nginx/sbin/nginx -s stopExecQuit=/usr/local/nginx/sbin/nginx -s quitPrivateTmp=true  [Install]WantedBy=multi-user.target

这里请注意,如果你想粘贴到命令窗,记得先输入i 并且鼠标右键进行粘贴,不要直接ctrl + v这样可能会导致命令不去不全

步骤3:我们先查找下nginx服务状态

ps -ef | grep nginx

Nginx入门篇1
步骤4:重新加载服务

systemctl daemon-reload 

步骤5:启动服务

systemctl start nginx.service

开机启动

systemctl enable nginx.service 

重启

reboot

到这里开机启动就完成了,我们重启下linux,然后看下效果
在这里插入图片描述

发现已经开机启动了,我们再访问下网页看看nginx服务
nginx默认是80端口,如果你不想要80端口可以去更改,同事记得加上端口防火墙权限

端口防火墙命令

firewall-cmd --zone=public --add-port=80/tcp --permanentservice firewalld restart

在这里插入图片描述

反向代理

反向代理服务器位于用户与目标服务器之间,但是对于用户而言,反向代理服务器就相当于目标服务器,即用户直接访问反向代理服务器就可以获得目标服务器的资源。同时,用户不需要知道目标服务器的地址,也无须在用户端作任何设定。反向代理服务器通常可用来作为Web加速,即使用反向代理作为Web服务器的前置机来降低网络和服务器的负载,提高访问效率。

反向代理配置

查看nginx安装的路径:

whereis nginx

发现nginx的服务目录是:/usr/local/nginx/
修改下面的conf配置文件conf/nginx.conf
在这里插入图片描述

需要加上:proxy_pass http://ip:port
在这里插入图片描述
修改了conf配置文件记得要重新加载才会生效

cd /usr/local/nginx/sbin/./nginx -s reload

Nginx入门篇1
我们预想是:当访问nginx服务器ip和端口会转发到我们指定的服务器地址;

查看效果:
访问http://192.168.1.180:80/email他就默认跳转到http://192.168.1.117:8777去了
在这里插入图片描述

负载均衡

负载均衡,英文名称为Load Balance,其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。

需求:
nginx作为负载均衡服务器,请求请求先到达nginx,再由nginx根据负载配置将请求转发到tomcat服务器;

我们的tomcat有两组:
tomcat1: 192.168.1.117:8777
tomcat2: 192.168.1.102: 80

我们来配置下nginx

首先要配置的就是增加一个upstream 给他取个名,我这就叫xianvServer,里面的内容为:两台tomcat服务的ip和端口;改完之后,我们在location处略微修改,上面反向代理我们是直接写死了ip和端口,这里我们这ip和端口换成了刚创建的xianvServer
在这里插入图片描述

为了更好的看到运行效果,我们在网页端加上各自的ip;

修改完记得重新启动下nginx生效

现在来访问下:http://192.168.1.180/email看看效果
我们发现117和102都是顺序访问的,这是因为没有设置权重的话,默认都是比率分配访问
在这里插入图片描述

我们将两个服务117设置权重为2,102设置权重为1再看看效果

这时候我们刷新会发现,117的次数明显比102多,大约是2倍;
在这里插入图片描述
在这里插入图片描述

好了到此简单的负载均衡就配置完成了,赶紧对着上手吧