nginx介绍
Nginx (engine x) 是一个****高性能的**HTTP*和*反向代理**web服务器****,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。
其将源代码以类BSD许可证的形式发布,因它的****稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而*****闻名*。2011年6月1日,nginx 1.0.4发布。
Nginx是一款*轻量级**的**Web* *服务器/**反向代理*服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是****占有内存少,**并发**能力强****,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。
Nginx安装
1、下载nginx
.tar.gz文件
2、上传到linux系统,到/usr/local/目录下
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kHEhgfSJ-1657029143650)(E:\Java资料\笔记整理\JavaUp\笔记整理\nginx.assets\image-20220612165844673.png)]](https://i-blog.csdnimg.cn/blog_migrate/7af26b0804244731e7466d809274d5ae.png)
3、对nginx进行解压缩
tar zxf nginx-1.8.0.tar.gz
4、安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gcc
yum install gcc-c++
5、 PCRE(Perl Compatible Regular Expressions)是一个Perl库,包括 perl 兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装pcre库。
yum install -y pcre pcre-devel
6、zlib库提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip,所以需要在linux上安装zlib库。
yum install -y zlib zlib-devel
7、OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。
nginx不仅支持http协议,还支持https(即在ssl协议上传输http),所以需要在linux安装openssl库。
yum install -y openssl openssl-devel
8、进入/var ,临时文件目录指定为/var/temp/nginx,需要在/var下创建temp及nginx目录
使用configure命令进行按装
cd /var
mkdir -p temp/nginx
./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
9、 先编译,再安装
make
make install
10、进入/usr/loacl/nginx/sbin中 启动nginx
./nginx
// 查看nginx进程
[root@centos701 sbin]# ps aux | grep nginx
root 63466 0.0 0.0 24892 764 ? Ss 17:18 0:00 nginx: master process ./nginx
nobody 63467 0.0 0.0 25320 1452 ? S 17:18 0:00 nginx: worker process
root 64584 0.0 0.0 112824 988 pts/0 S+ 17:19 0:00 grep --color=auto nginx
访问 http://192.168.146.132
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yHSiFsWv-1657029143652)(E:\Java资料\笔记整理\JavaUp\笔记整理\nginx.assets\image-20220612172413419.png)]](https://i-blog.csdnimg.cn/blog_migrate/812babdf16b6f01c28bd43a90baa80a1.png)
关闭 nginx
./nginx -s stop
重新加载nginx
./nginx -s reload
充当静态资源服务器
访问 http://192.168.146.132 。默认/usr/local/redis/html 为根目录,默认访问根目录中的index.html
修改根目录配置
1、进入 /usr/local/redis/conf/redis.conf 中修改根目录配置
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3grbB5lK-1657029143654)(E:\Java资料\笔记整理\JavaUp\笔记整理\nginx.assets\image-20220612210637482.png)]](https://i-blog.csdnimg.cn/blog_migrate/8d6888b7ac4d8305ef7e3728a5153690.png)
2、进入 /usr/local/nginx/sbin 重新启动nginx
./nginx -s reload
3、再访问http://192.168.146.132即可,默认的是访问的自己设置的根目录下的 index.html
正向代理
所谓的正向代理指是客户端代理
正向代理,意思是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端才能使用正向代理。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NwCjcqfF-1657029143656)(E:\Java资料\笔记整理\JavaUp\笔记整理\nginx.assets\image-20220612213130137.png)]](https://i-blog.csdnimg.cn/blog_migrate/5d1e75bf11d180f172a9f9745fecf029.png)
反向代理
所谓的反向代理指是服务器端代理
反向代理服务器位于用户与目标服务器之间,但是对于用户而言,反向代理服务器就相当于目标服务器,即用户直接访问反向代理服务器就可以获得目标服务器的资源。同时,用户不需要知道目标服务器的地址,也无须在用户端作任何设定。反向代理服务器通常可用来作为Web加速,即使用反向代理作为Web服务器的前置机来降低网络和服务器的负载,提高访问效率。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nY9xp3Wu-1657029143656)(E:\Java资料\笔记整理\JavaUp\笔记整理\nginx.assets\image-20220612213041911.png)]](https://i-blog.csdnimg.cn/blog_migrate/ccbd918ab5c67fb4701101b50601891a.png)
负载均衡
1、先配置再/usr/local/中配置jdk
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZxPwsCxB-1657029143657)(E:\Java资料\笔记整理\JavaUp\笔记整理\nginx.assets\image-20220612223413789.png)]](https://i-blog.csdnimg.cn/blog_migrate/37f99df5c65ad2d89fa8686827d45489.png)
2、利用不同的端口来演示负载均衡
配置tomcat,将Tomcat复制然后分别修改server.xml中的端口等信息。
再将tomcat中webapp/ROOT/index.html中略微修改,达到页面不一样的效果即可
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nmpyfSiE-1657029143658)(E:\Java资料\笔记整理\JavaUp\笔记整理\nginx.assets\image-20220612223609027.png)]](https://i-blog.csdnimg.cn/blog_migrate/7b74e77179e5b717f63192045a7d7b82.png)
tomcat1中server.xm信息修改
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tnBz6Oun-1657029143659)(E:\Java资料\笔记整理\JavaUp\笔记整理\nginx.assets\image-20220612223821018.png)]](https://i-blog.csdnimg.cn/blog_migrate/e5d5a560e62280611dd23abf347c87a1.png)
tomcat2中server.xml信息修改
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lGFpaw2Y-1657029143660)(E:\Java资料\笔记整理\JavaUp\笔记整理\nginx.assets\image-20220612223920714.png)]](https://i-blog.csdnimg.cn/blog_migrate/f93f9833b911e8b68708abdcd36c1ef1.png)
3、修改/usr/local/nginx/conf/nginx.conf中的配置文件
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-95wDH3Sm-1657029143660)(E:\Java资料\笔记整理\JavaUp\笔记整理\nginx.assets\image-20220612224709156.png)]](https://i-blog.csdnimg.cn/blog_migrate/1a51c238da552b4a9badf1a56e40fbea.png)
4、启动tomcat1和tomcat2,然后在重启nginx服务器
//再tomcat/bin下启动 tomcat
./startup.sh
// 在nginx/sbin下重启 nginx
./nginx -s reload
5、重新访问 http://192.168.146.132 发现负载均衡已经实现
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pGAiBs66-1657029143661)(E:\Java资料\笔记整理\JavaUp\笔记整理\nginx.assets\image-20220612225222197.png)]](https://i-blog.csdnimg.cn/blog_migrate/059425a4845fb1169cf32cc3021020e4.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-c34hivuq-1657029143662)(E:\Java资料\笔记整理\JavaUp\笔记整理\nginx.assets\image-20220612225243650.png)]](https://i-blog.csdnimg.cn/blog_migrate/6c2f20d956d6f69a6f6486685d3a09b0.png)
通过tomcat和nginx实现动静分离
1、分别在tomcat中的webapp/ROOT/ 目录下 添加示例jsp页面,jsp页面中图片来自静态资源
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nIT7SgOp-1657029143662)(E:\Java资料\笔记整理\JavaUp\笔记整理\nginx.assets\image-20220612230917803.png)]](https://i-blog.csdnimg.cn/blog_migrate/78ea7418053b63c3ddde8b7cd28f8bba.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5qQemwQP-1657029143663)(E:\Java资料\笔记整理\JavaUp\笔记整理\nginx.assets\image-20220612230930993.png)]](https://i-blog.csdnimg.cn/blog_migrate/e0f496196267e2b89ff862d334a656ca.png)
2、在创建静态资源根目录,把静态资源放进去
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iBtRxuqj-1657029143664)(E:\Java资料\笔记整理\JavaUp\笔记整理\nginx.assets\image-20220612230716839.png)]](https://i-blog.csdnimg.cn/blog_migrate/6f80e3a9851e6a0b3bf8bf43e13a4377.png)
3、配置nginx.conf ,实现动静分离
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iQkhUqpg-1657029143665)(E:\Java资料\笔记整理\JavaUp\笔记整理\nginx.assets\image-20220612231714964.png)]](https://i-blog.csdnimg.cn/blog_migrate/0051bc470704266baedfefae0fed5cb6.png)
4、访问http://192.168.146.132/aaa.jsp 连续访问,即可看到效果
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UueDlvA2-1657029143665)(E:\Java资料\笔记整理\JavaUp\笔记整理\nginx.assets\image-20220612232320649.png)]](https://i-blog.csdnimg.cn/blog_migrate/dd6da818239906133d7925df74f7e07c.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rgSmfxUy-1657029143666)(E:\Java资料\笔记整理\JavaUp\笔记整理\nginx.assets\image-20220612232331362.png)]](https://i-blog.csdnimg.cn/blog_migrate/2dba4d8ac1941f7f5ba7461775059878.png)
本文介绍了Nginx,它是高性能的HTTP和反向代理web服务器,具有稳定性好、占内存少、并发能力强等特点。还详细说明了Nginx在Linux系统的安装步骤,以及其充当静态资源服务器、正向代理、反向代理、负载均衡和实现动静分离等功能的具体操作。
1511

被折叠的 条评论
为什么被折叠?



