nginx详解(下载,安装,配置,反向代理,负载均衡详史上最全最详细)

1.下载:nginx-1.8.0.tar.gz(当然其他版本都是可以的)

官方网站:
http://nginx.org/
使用的版本是1.8.0版本。
在这里插入图片描述
下载链接:nginx下载(当然如何你不愿意去官网下,我已经为你准备好了,直接下载就行)

2. 要求的安装环境

2.1、需要安装gcc的环境。yum install gcc-c++
2.2、第三方的开发包。

 PCRE
PCRE(Perl Compatible Regular Expressions)是一个Perl库,包括 perl 兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装pcre库。
yum install -y pcre pcre-devel
注:pcre-devel是使用pcre开发的一个二次开发库。nginx也需要此库。
 zlib
zlib库提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip,所以需要在linux上安装zlib库。
yum install -y zlib zlib-devel

 openssl
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。
nginx不仅支持http协议,还支持https(即在ssl协议上传输http),所以需要在linux安装openssl库。
yum install -y openssl openssl-devel

3. 安装步骤

第一步:把nginx的源码包上传到linux系统
第二步:解压缩
[root@localhost ~]# tar zxf nginx-1.8.0.tar.gz
第三步:使用configure命令创建一makeFile文件。
./configure
–prefix=/usr/local/nginx
–pid-path=/var/run/nginx/nginx.pid
–lock-path=/var/lock/nginx.lock
–error-log-path=/var/log/nginx/error.log
–http-log-path=/var/log/nginx/access.log
–with-http_gzip_static_module
–http-client-body-temp-path=/var/temp/nginx/client
–http-proxy-temp-path=/var/temp/nginx/proxy
–http-fastcgi-temp-path=/var/temp/nginx/fastcgi
–http-uwsgi-temp-path=/var/temp/nginx/uwsgi
–http-scgi-temp-path=/var/temp/nginx/scgi

注意:启动nginx之前,上边将临时文件目录指定为/var/temp/nginx,需要在/var下创建temp及nginx目录
(mkdir /var/temp/nginx/client -p)

第四步:make
第五步:make install

在这里插入图片描述

4.启动nginx

进入sbin目录
[root@localhost sbin]# ./nginx

在这说萨达萨达撒述
关闭nginx:
[root@localhost sbin]# ./nginx -s stop
推荐使用:
[root@localhost sbin]# ./nginx -s quit

重启nginx:
1、先关闭后启动。
2、刷新配置文件:
[root@localhost sbin]# ./nginx -s reload

最后访问nginx:
在这里插入图片描述
看到这,基本上nginx的安装就基本结束!下面是介绍nginx的负载均衡和反向代理!
默认是80端口。
注意:是否关闭防火墙
总共三个地方有nginx:
1.就是/root/nginx>>>安装包
2./usr/local/nginx>>>安装目录
3./var/temp/nginx>>>nginx需需要的零时目录

5.nginx的反向代理

首先解释下反向代理的含义:就是无数个请求过来,我们先会让所有的请求请求nginx,然后由nginx统一处理,但其实nginx并不是真正的处理,而是将请求都分发给各个tomcat,一台tomcat就代表一个应用服务器节点,然后等应用服务器处理后,最后再将请求返回给nginx,最后nginx再响应给请求的域名的过程。
注:反向代理指的是服务端的代理

6.虚拟主机

虚拟主机:如果你的公司比较穷,只有一台服务器,但是你还要运行若干个网站,而且你还想让每个网站的端口都是8080,那么在做这件事的时候,nginx里面的一个server就可以看作是一个虚拟主机。

扫描二维码关注公众号,回复: 9301902 查看本文章

首先nginx的配置文件里面,
可以配置多个server,配置了多个虚拟主机。当你修改配置文件时,需要刷新配置文件!那么问题来了,怎么区分这些虚拟主机呢,很明显,你当然可以通过端口,指定响应的域名,但是,假如两个不同的域名(两个网站都想用80端口)都想只通过80端口去反问自己的网站,谁都不愿意反问的时候还要在后面加个81(默认80端口,不需要加),怎么办呢?答案是:通过配置host文件里面的域名和ip的映射关系,一旦配置配置了,dns解析就不会走dns了(dns的作用就是用来解析域名可ip的对应关系 的),将n个域名都配置成同一台服务器地址,然后在nginx的配置文件里面配置多个server,指定不同的域名,端口都是80就可以了

7.负载均衡

在这里插入图片描述
如何需要添加多个节点,直接就在upstream tomcat1 里面加多个节点就好了,如果想哪个节点权重多一点,直接配置如下:
在这里插入图片描述
至此,nginx配置完毕!谢谢光看!

发布了17 篇原创文章 · 获赞 2 · 访问量 2022

猜你喜欢

转载自blog.csdn.net/wumingdu1234/article/details/104260852