nginx配置server无法访问(3分钟全面了解nginx配置内容)
Nginx是现在最火的服务器web和反向代理服务器,反向代理是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。另外在高并发方面,也有比较优异的表现。
Nginx是一款轻量级的Web服务器、反向代理服务器,基于 REST 架构风格,以统一资源描述符URI 或者统一资源定位符URL 作为沟通依据,通过 HTTP 协议提供各种网络服务。由于它的内存占用少,启动极快,高并发能力强,在互联网项目中广泛应用。
整体介绍
Nginx是一款自由的、开源的、高性能的HTTP服务器和反向代理服务器;同时也是一个IMAP、POP3、SMTP代理服务器;Nginx可以作为一个HTTP服务器进行网站的发布处理,另外Nginx可以作为反向代理进行负载均衡的实现。
1.反向代理
反向代理理解架构如下:
反向代理(Reverse Proxy)方式是指以代理服务器来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
如图,保存配置文件后启动 Nginx,这样当我们访问 XX.XX.X.XXX 的时候,就相当于访问 XX.XX.X.XXX:80 了。
2.负载均衡
负载均衡理解图:
负载均衡,其原理就是将数据流量分摊到多个服务器执行,减轻每台服务器的压力,多台服务器(集群)共同完成工作任务,从而提高了数据的吞吐量,多在高并发情况下使用。可使用的负载均衡策略有:轮询(默认)、权重、ip_hash、url_hash(第三方)、fair(第三方)。
如图,保存配置文件后启动 Nginx,这样当我们访问 XX.XX.X.XXX/umc 的时候,就相当于访问 XX.XX.X.XXX:1010 或者XX.XX.X.XXX:1010了,因为 Nginx 会自动判断服务器的状态,如果服务器处于不能访问(服务器宕机)的状态,就不会跳转到这台服务器,所以也避免了一台服务器宕机影响使用的情况。
3.动静分离
Nginx 本身也是一个静态资源的服务器,当只有静态资源的时候,就可以使用 Nginx 来做服务器,同时现在很流行的动静态分离,就可以通过 Nginx 来实现,首先看看 Nginx 做静态资源服务器。
如图,这样如果访问 http:// IP 就会默认访问到上边的指定路径当中index.html,如果一个网站只是静态页面的话,那么就可以通过这种方式来实现部署。
动静分离,常用于前后端分离,Nginx提供的动静分离是指把动态请求和静态请求分离开,合适的服务器处理相应的请求,使整个服务器系统的性能、效率更高。Nginx可以根据配置对不同的请求做不同转发,这是动态分离的基础。静态请求对应的静态资源可以直接放在Nginx上做缓冲,更好的做法是放在相应的缓冲服务器上。动态请求由相应的后端服务器处理。
安装配置
本次以Nginx1.14.2版本为例在linux服务器环境上进行安装部署,具体操作如下:
1.环境准备
安装make:
安装g++:
安装pcre和pcre-devel:
安装zlib zlib提供了很多压缩和解方式,nginx需要zlib对http进行gzip:
安装openssl openssl是一个安全套接字层密码库,nginx要支持https,需要使用openssl:
2.安装配置
下载nginx:
进入文件夹:
解压:
打开文件路径:
编译文件:
安装:
更改配置文件:
方式二:也可以将nginx.conf文件直接通过xftp上传到该位置,注意将原有文件进行备份:
让配置立即生效:
3.执行启动
进入sbin目录:
启动nginx::
停止命令:
高可用配置
Keepalived是一个高可用解决方案,主要是用来防止服务器单点发生故障,可以通过和Nginx配合来实现Web服务的高可用。
1.环境准备
通过以下命令安装Keepalived:
设置为系统服务:
关闭SElinux、配置keepalived相关配置 :
进入后做如下修改:
修改完成后,配置立即生效:
修改keepalived配置,主从机不同的地方通过黄色高亮显示:
备份:cp
/etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak:
2.脚本配置
配置 chk_nginx.sh文件:
添加如下内容:
脚本进行授权:
修改防火墙,添加对虚拟IP的监听:
3.启停服务
开启keepalived服务:
停止keepalived服务:
心得体会
本次项目Nginx的配置促使自己在网络层面有了一定的了解,尤其是Nginx的几个核心功能,具体包含反向代理、负载均衡等,但是这只是刚刚开始,需要学习的内容还有很多,现从后续规划、做事方法、迭代更新方面总结如下。
1.后续规划
每一次搭建K8S集群环境都曾配置过Nginx,但是都只是在照猫画虎,只是把配置文件拿过来进行使用,并不理解配置文件中每段代码的含义,只会配置某个关键字段信息,经过本次的知识点梳理学习到了很多,但是学无止境,对nginx的了解还是不足,例如设置权重、正向代理等等了解得不够全面,后续更要在逻辑上对每行代码深入研究。
2.做事方法
通过平时工作过程中对技能点的随手记录,在撰写这篇文章的过程中,再一次梳理了自己的逻辑。在后续的工作中,应该文档分门别类地整理出来,例如教程类的内容归为一类、错误信息及解决方案的内容归为一类、知识点归为一类,以便自己对知识进行更新迭代及快速查找。笔者认为写文档不仅没有浪费时间,而且通过文档的撰为我提供了很多帮助,比如代码的复用、类似错误信息的快速调试等,节省了很多时间。
3.迭代更新
近期在某些项目配置过程中遇到了内网80端口及外网端口ESB服务转换时默认携带外网配置端口的问题,解决本次问题是撰写该文档的主要原因,具体解决方法是通过nginx配置两个server,通过监控不同的端口使其指向不同的server来解决本次问题,但是在工作过程中发现有时会出现逻辑不清晰的情况,特别是在网络层面的理解严重缺失,后续还需要不断地深入了解。
伴随着自身专业知识的不断积累,对知识的认知也不断提高。当回过头来看自己之前记录的工作文档,会发现有存在很多漏点,这时就需要再次完善工作文档。在这个完善的过程中又把初学时的理解和现在的理解做了比较,可以认识到当时的自己有哪些不足,思维逻辑有了哪些改善。技术、认知在不断更新,工作文档也在不断更新,在这个不断迭代更新的过程中,使自己的知识点不知不觉连成了线。
- 1bat的大数据(BAT的大数据来源)
- 2三星s8屏幕上端2(三星s8屏幕上端2个按键)
- 3三星屏幕坏了如何导出(三星屏幕摔坏了如何导出数据么)
- 4红米3x怎么关闭自动更新(红米k40s怎么关闭自动更新)
- 5微信上防止app自动下载软件怎么办(微信上防止app自动下载软件怎么办啊)
- 6押镖多少钱(押镖一个月有多少储备金)
- 7瑞星个人防火墙胡功能(瑞星个人防火墙协议类型有哪些)
- 8cf现在等级是多少(cf等级2020最新)
- 9老滑头多少条鱼(钓鱼老滑头有什么用)
- 10WPS自动调整语法(wps如何修改语法)
- 11dell控制面板防火墙(dell的防火墙怎么关闭)
- 12丑女技能升多少(丑女技能需要满级吗)
- 13智能家居系统怎么样(智能家居系统好吗)
- 14戴尔屏幕(戴尔屏幕闪烁)
- 15y85屏幕信息(vivoy85息屏显示时间怎么设置)
- 16魅蓝note3屏幕出现方格(魅蓝note屏幕竖条纹)
- 17v8手指按屏幕(触屏手指)
- 18金为液晶广告机(液晶广告机lb420)
- 19三星显示器怎么校色(三星显示器 调色)
- 20hkc显示器dvi音频(hkc显示器有音响么)
- 21康佳液晶智能电视机(康佳液晶智能电视机怎么样)
- 22做液晶画板电脑(做液晶画板电脑怎么操作)
- 23液晶屏极化现象原理(液晶屏极化现象原理是什么)
- 24企业网络安全防火墙(企业网络防护)
- 256splus黑屏屏幕不亮(苹果6s plus屏幕突然黑屏)
- 26充电导致屏幕失灵(充电导致屏幕失灵怎么办)
- 27超极本屏幕旋转(笔记本电脑屏幕旋转,怎么转过来?)
- 28igmp防火墙(防火墙配置ipv6)
- 29荣耀王者多少经验(王者荣耀经验多少一级)
- 30lol老将还剩多少(qg老将)