您当前的位置:首页 > 电脑百科 > 站长技术 > 服务器

Nginx配置知识点梳理

时间:2021-07-09 10:48:41  来源:  作者:数通畅联

Nginx是现在最火的服务器web和反向代理服务器,反向代理是指以代理服务器来接受inte.NET上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。另外在高并发方面,也有比较优异的表现。

Nginx是一款轻量级的Web服务器、反向代理服务器,基于 REST 架构风格,以统一资源描述符URI 或者统一资源定位符URL 作为沟通依据,通过 HTTP 协议提供各种网络服务。由于它的内存占用少,启动极快,高并发能力强,在互联网项目中广泛应用。

整体介绍

Nginx是一款自由的、开源的、高性能的HTTP服务器和反向代理服务器;同时也是一个IMAP、POP3、SMTP代理服务器;Nginx可以作为一个HTTP服务器进行网站的发布处理,另外Nginx可以作为反向代理进行负载均衡的实现。

1.反向代理

反向代理理解架构如下:

Nginx配置知识点梳理

 

反向代理(Reverse Proxy)方式是指以代理服务器来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。

Nginx配置知识点梳理

 

如图,保存配置文件后启动 Nginx,这样当我们访问 XX.XX.X.XXX 的时候,就相当于访问 XX.XX.X.XXX:80 了。

2.负载均衡

负载均衡理解图:

Nginx配置知识点梳理

 

负载均衡,其原理就是将数据流量分摊到多个服务器执行,减轻每台服务器的压力,多台服务器(集群)共同完成工作任务,从而提高了数据的吞吐量,多在高并发情况下使用。可使用的负载均衡策略有:轮询(默认)、权重、ip_hash、url_hash(第三方)、fair(第三方)

Nginx配置知识点梳理

 

 

如图,保存配置文件后启动 Nginx,这样当我们访问 XX.XX.X.XXX/umc 的时候,就相当于访问 XX.XX.X.XXX:1010 或者XX.XX.X.XXX:1010了,因为 Nginx 会自动判断服务器的状态,如果服务器处于不能访问(服务器宕机)的状态,就不会跳转到这台服务器,所以也避免了一台服务器宕机影响使用的情况。

3.动静分离

Nginx 本身也是一个静态资源的服务器,当只有静态资源的时候,就可以使用 Nginx 来做服务器,同时现在很流行的动静态分离,就可以通过 Nginx 来实现,首先看看 Nginx 做静态资源服务器。

Nginx配置知识点梳理

 

如图,这样如果访问 http:// IP 就会默认访问到上边的指定路径当中index.html,如果一个网站只是静态页面的话,那么就可以通过这种方式来实现部署。

动静分离,常用于前后端分离,Nginx提供的动静分离是指把动态请求和静态请求分离开,合适的服务器处理相应的请求,使整个服务器系统的性能、效率更高。Nginx可以根据配置对不同的请求做不同转发,这是动态分离的基础。静态请求对应的静态资源可以直接放在Nginx上做缓冲,更好的做法是放在相应的缓冲服务器上。动态请求由相应的后端服务器处理。

安装配置

本次以Nginx1.14.2版本为例在linux服务器环境上进行安装部署,具体操作如下:

1.环境准备

安装make:

Nginx配置知识点梳理

 

安装g++:

Nginx配置知识点梳理

 

安装pcre和pcre-devel:

Nginx配置知识点梳理

 

安装zlib zlib提供了很多压缩和解方式,nginx需要zlib对http进行gzip:

Nginx配置知识点梳理

 

安装openssl openssl是一个安全套接字层密码库,nginx要支持https,需要使用openssl:

Nginx配置知识点梳理

 

2.安装配置

下载nginx:

Nginx配置知识点梳理

 

进入文件夹:

Nginx配置知识点梳理

 

解压:

Nginx配置知识点梳理

 

打开文件路径:

Nginx配置知识点梳理

 

编译文件:

Nginx配置知识点梳理

 

安装:

Nginx配置知识点梳理

 

更改配置文件:

Nginx配置知识点梳理

 

方式二:也可以将nginx.conf文件直接通过xftp上传到该位置,注意将原有文件进行备份

Nginx配置知识点梳理

 

让配置立即生效:

Nginx配置知识点梳理

 

3.执行启动

进入sbin目录:

Nginx配置知识点梳理

 

启动nginx::

Nginx配置知识点梳理

 

停止命令:

Nginx配置知识点梳理

 

 

高可用配置

Keepalived是一个高可用解决方案,主要是用来防止服务器单点发生故障,可以通过和Nginx配合来实现Web服务的高可用。

1.环境准备

通过以下命令安装Keepalived:

Nginx配置知识点梳理

 

设置为系统服务:

Nginx配置知识点梳理

 

关闭SElinux、配置keepalived相关配置 :

Nginx配置知识点梳理

 

进入后做如下修改:

Nginx配置知识点梳理

 

修改完成后,配置立即生效:

Nginx配置知识点梳理

 

修改keepalived配置,主从机不同的地方通过黄色高亮显示:

Nginx配置知识点梳理

 

备份:cp
/etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak:

Nginx配置知识点梳理

 


Nginx配置知识点梳理

 


Nginx配置知识点梳理

 

2.脚本配置

配置 chk_nginx.sh文件:

Nginx配置知识点梳理

 

添加如下内容:

Nginx配置知识点梳理

 

脚本进行授权:

Nginx配置知识点梳理

 

修改防火墙,添加对虚拟IP的监听:

Nginx配置知识点梳理

 

3.启停服务

开启keepalived服务:

Nginx配置知识点梳理

 

停止keepalived服务:

Nginx配置知识点梳理

 

心得体会

本次项目Nginx的配置促使自己在网络层面有了一定的了解,尤其是Nginx的几个核心功能,具体包含反向代理、负载均衡等,但是这只是刚刚开始,需要学习的内容还有很多,现从后续规划、做事方法、迭代更新方面总结如下。

1.后续规划

每一次搭建K8S集群环境都曾配置过Nginx,但是都只是在照猫画虎,只是把配置文件拿过来进行使用,并不理解配置文件中每段代码的含义,只会配置某个关键字段信息,经过本次的知识点梳理学习到了很多,但是学无止境,对nginx的了解还是不足,例如设置权重、正向代理等等了解得不够全面,后续更要在逻辑上对每行代码深入研究

2.做事方法

通过平时工作过程中对技能点的随手记录,在撰写这篇文章的过程中,再一次梳理了自己的逻辑。在后续的工作中,应该文档分门别类地整理出来,例如教程类的内容归为一类、错误信息及解决方案的内容归为一类、知识点归为一类,以便自己对知识进行更新迭代及快速查找。笔者认为写文档不仅没有浪费时间,而且通过文档的撰为我提供了很多帮助,比如代码的复用、类似错误信息的快速调试等,节省了很多时间。

3.迭代更新

近期在某些项目配置过程中遇到了内网80端口及外网端口ESB服务转换时默认携带外网配置端口的问题,解决本次问题是撰写该文档的主要原因,具体解决方法是通过nginx配置两个server,通过监控不同的端口使其指向不同的server来解决本次问题,但是在工作过程中发现有时会出现逻辑不清晰的情况,特别是在网络层面的理解严重缺失,后续还需要不断地深入了解。

伴随着自身专业知识的不断积累,对知识的认知也不断提高。当回过头来看自己之前记录的工作文档,会发现有存在很多漏点,这时就需要再次完善工作文档。在这个完善的过程中又把初学时的理解和现在的理解做了比较,可以认识到当时的自己有哪些不足,思维逻辑有了哪些改善。技术、认知在不断更新,工作文档也在不断更新,在这个不断迭代更新的过程中,使自己的知识点不知不觉连成了线。

本文由@数通畅联原创,欢迎转发,仅供学习交流使用,引用请注明出处!谢谢~



Tags:Nginx配置   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
一、简介对于网站来说,尤其是流量较大出名的网站,经常遇到攻击,如DDOS攻击等,虽然有些第三方,如Cloudflare可以挡,但对于动态网站PHP来说,只能挡一部分。这时候需要对于单个IP恶意...【详细内容】
2022-05-05  Tags: Nginx配置  点击:(147)  评论:(0)  加入收藏
在前面已经演示了nginx的安装以及常用命令,这一章节重点讲解nginx的配置文件。1. nginx配置文件路径:不同安装方式,nginx的文件存放路径也有所不同。源码编译安装方式:在安装目...【详细内容】
2021-07-19  Tags: Nginx配置  点击:(194)  评论:(0)  加入收藏
Nginx是现在最火的服务器web和反向代理服务器,反向代理是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给inte...【详细内容】
2021-07-09  Tags: Nginx配置  点击:(173)  评论:(0)  加入收藏
前言由于现在需要部署nginx的docker,希望nginx配置文件里面有关server_name在启动容器前动态修改。 但是由于nginx的配置文件不支持使用环境变量。网上找了好些方案,最终选择...【详细内容】
2021-06-02  Tags: Nginx配置  点击:(376)  评论:(0)  加入收藏
#定义Nginx运行的用户和用户组user www www; #nginx进程数,建议设置为等于CPU总核心数。worker_processes 8; #全局错误日志定义类型,[ debug | info | notice | warn | error...【详细内容】
2021-04-30  Tags: Nginx配置  点击:(275)  评论:(0)  加入收藏
Nginx配置详解Nginx的配置是在nginx.conf中进行配置的主要由三部分组成 全局块 events块 http块全局块从配置文件开始到events块之间的内容是全局块,主要用来配置Nginx服务...【详细内容】
2021-04-12  Tags: Nginx配置  点击:(298)  评论:(0)  加入收藏
负载均衡负载均衡实现利用服务器集群处理客户端请求,提高访问效率,降低服务器响应压力。负载均衡的调度算法含义参照:Nginx入门介绍。通过修改nginx.conf配置文件(详见Nginx中n...【详细内容】
2021-01-27  Tags: Nginx配置  点击:(301)  评论:(0)  加入收藏
安装所需插件1、安装gccgcc是linux下的编译器在此不多做解释,感兴趣的小伙伴可以去查一下相关资料,它可以编译 C,C++,Ada,Object C和Java等语言命令:查看gcc版本gcc -v 一般阿...【详细内容】
2020-12-17  Tags: Nginx配置  点击:(189)  评论:(0)  加入收藏
假设Kubernetes集群已经配置好,我们将基于CentOS为Nginx创建一个虚拟机。以下是实验种设置的详细信息: Nginx (CenOS8 Minimal) - 192.168.1.50 Kube Master - 192.168.1.40 K...【详细内容】
2020-12-15  Tags: Nginx配置  点击:(204)  评论:(0)  加入收藏
作为一名程序员,特别是后端程序员,给你的项目配置Https是比较常见的事,特别是很多时候必须要使用https,比如微信小程序生产环境的接口地址就必须要https域名。那么如何给域名配...【详细内容】
2020-11-23  Tags: Nginx配置  点击:(171)  评论:(0)  加入收藏
▌简易百科推荐
众所周知,SSL证书通常是针对完全合格的域名(FQDN)颁发的。然而,一些企业和公共机构不能通过域名访问各种类型的应用程序,而是使用IP地址。为了有效保障这类企业的数据传输安全,IP...【详细内容】
2022-10-30  青蛙数字安全    Tags:SSL   点击:(14)  评论:(0)  加入收藏
现在搭建网站其中的三要素:域名、主机空间以及建站程序缺一不可。主机空间其实也就是我们常见的服务器,在搭建网站之前一般都会提前规划配置什么样的空间/服务器,其中美国虚拟...【详细内容】
2022-10-24  安信SSL证书    Tags:SSL证书   点击:(5)  评论:(0)  加入收藏
当前许多企业为吸引国际客户的关注,获取更多的国际市场机会,都把网站搭建在香港或国际多地的服务器上。但是在网站搭建完成后,发现网站无法访问,这是什么原因导致的呢?其实,遇到...【详细内容】
2022-10-24  云杰通信    Tags:服务器   点击:(8)  评论:(0)  加入收藏
我们如果要存储大量数据的话,都会用到服务器系统进行储存,很多IT公司都是拥有自己的服务器系统,那如果我们因为工作需要想要重装戴尔服务器系统的话,要怎么进行操作呢,下面教给大...【详细内容】
2022-10-24  小白一键重装系统    Tags:服务器   点击:(11)  评论:(0)  加入收藏
现在主流都在推荐使用SSL证书,部署了SSL证书能自动激活浏览器显示“锁”型标志,我们可以在浏览器的地址栏看到“https”开头的网址。SSL证书意味着在客户端浏览器和Web服务器...【详细内容】
2022-10-22  吠品    Tags:SSL证书   点击:(4)  评论:(0)  加入收藏
大家都知道安装域名安全证书,即SSL证书后相当于为网站加上了一层保护罩,能有效预防黑客攻击,避免传输信息的泄露,从而大大提高网站的安全性。虽然大多数网站使用域名申请SSL证书...【详细内容】
2022-10-21  Cntrus数字认证    Tags:SSL证书   点击:(5)  评论:(0)  加入收藏
今天,通过xftp向Centos系统的某个文件夹上传文件时,莫名其妙上传失败,提示的错误信息为Unknown error!首先排除了权限问题,但是具体是什么问题呢?初步怀疑是磁盘满了。那么如果确...【详细内容】
2022-10-20  紫气之巅  今日头条  Tags:CentOS   点击:(9)  评论:(0)  加入收藏
FTP服务软件安装包: vsftpd默认发布目录: /var/ftp协议接口: 21/tcp服务配置文件: /etc/vsftpd/vsftpd.conf报错id的解析:500 ##文件系统权限过大530 ##用户认证失败550 ##服务本...【详细内容】
2022-10-17  沪飘运维    Tags:FTP   点击:(19)  评论:(0)  加入收藏
一个朋友说他遇到这样一个问题,同样的服务器别人可以连接,自己却无法连接,捣鼓了好久都无法解决,很是郁闷。这个问题,刚好我之前也遇到过,后来完美解决了,这就给大家分享一下我的解...【详细内容】
2022-10-14  萌小翊  搜狐号  Tags:服务器   点击:(22)  评论:(0)  加入收藏
nginx 80端口重定向到443端口,也就是http访问自动跳转到https 配置如下:一、按照如下格式修改nginx.conf 配置文件,80端口会自动转给443端口,这样就强制使用SSL证书加密了。访问...【详细内容】
2022-10-09  运维技术站  今日头条  Tags:重定向   点击:(74)  评论:(0)  加入收藏
站内最新
站内热门
站内头条