一篇文章带你了解轻量级Web服务器——Nginx简单入门

一篇文章带你了解轻量级Web服务器——Nginx简单入门Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件代理服务器
在本篇中我们会简单介绍Nginx的特点,安装 , 相关指令使用以及配置信息和具体应用等

本篇内容属于《瑞吉外卖》的知识科普部分,有兴趣可以查看一下《瑞吉外卖》的相关文章内容
Nginx概述我们先来对Nginx做一个的简单的了解
Nginx介绍Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件代理服务器
本身具有占用内存少,并发能力强等特点,其并发能力在同类型的网页服务器中表现较好,包括百度,京东等众多服务器都是采用Nginx
Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日 。
下面附上官方:nginx news
Nginx下载与安装我们的Nginx通常使用在Linux服务器系统上,我们这里使用虚拟机来进行操作:
  1. 安装依赖包
【一篇文章带你了解轻量级Web服务器——Nginx简单入门】# 我们首先来下载一些关于Nginx安装的依赖包yum -y install gcc pcre-devel zlib-devel openssl oepnssl-devel
  1. 下载Nginx安装包
# 我们借助wget网上下载插件来实现yum install wget# 我们使用wget下载安装包wget https://nginx.org/download/nginx-1.16.1.tar.gz
  1. 解压安装包
# 解压安装包在当前文件夹roottar -zxvf nginx-1.16.1.tar.gz
  1. 跳转页面,进入内部
# 跳转页面cd nginx-1.16.1
  1. 安装Nginx在usr目录下
# 创建文件夹mkdir /usr/local/nginx# 安装./configure --prefix=/usr/local/nginx
  1. 安装
# 安装make && make install至此我们的Nginx安装完成
Nginx目录介绍在安装完Nginx后,我们可以到相应文件下查看,可以看到主要分为四个文件包:
  • conf:存放配置文件
  • html:存放静态资源
  • logs:存放日志信息
  • sbin:存放二进制文件
其中我们主要使用的两个文件是:
  • conf/nginx.conf:用于修改nginx配置信息
  • sbin/nginx:用于启动停止nginx服务
这里我们介绍一个Linux插件 , 可以详细查看该目录下所有的文件内容:
# Tree插件(需要先下载yum install tree)tree我们可以看到其文件逻辑结构:
一篇文章带你了解轻量级Web服务器——Nginx简单入门

文章插图
Nginx命令下面我们将着重介绍几个Nginx常用命令
Nginx查看版本号首先我们需要来到sbin目录下:
# 跳转页面cd /usr/local/nignx/sbin我们使用查看命令:
# 查看版本号./nginx -vNginx检查正确性首先我们需要来到sbin目录下:
# 跳转页面cd /usr/local/nignx/sbin我们使用检查命令:
# 检查版本以及配置信息./nginx -tNginx启动与停止首先我们需要来到sbin目录下:
# 跳转页面cd /usr/local/nignx/sbin我们使用相关命令:
# 启动命令./nginx# 停止命令./nginx -s stop# 重启命令./nginx -s reload# 查看nginx进程ps -ef|grep nginxNginx配置文件下面我们来简单介绍一下配置文件
Nginx配置文件整体介绍我们通常将其配置文件分为三部分:
  • 全局块:和Nginx运行相关的全局配置
  • events块:和网络连接相关的配置
  • http块:代理,缓存,日志记录,虚拟主机配置
其中http块还分为两部分:
  • http全局快
  • server块
其中server还分为两部分:
  • Server全局快
  • location块
我们需要注意的是:
  • http块中可以配置多个Server块,每个Server块中可以配置多个location块
我们可以到具体配置文件中去查看相关配置:
# 查看配置文件vim /usr/local/nignx/conf/nignx.conf# 以下为配置文件内容(已将#注释部分删除)# 第一部分是全局块worker_processes1; # 这里表示可以同时有多少个进程# 第二部分是events块events {worker_connections1024; # 单个工作进程可以允许同时建立外部连接的数量,数字越大 , 能同时处理的连接越多}# 第三部分是http块,里面包含了代理,缓存,日志记录 , 虚拟主机配置等相关信息,我们后续会详细介绍http { # 3.1 http全局块includemime.types;default_typeapplication/octet-stream;sendfileon;keepalive_timeout65; # 3.2 Server块server {# 3.2.1 Server全局块listen80;server_namelocalhost;# 3.2.2 location块location / {roothtml;indexindex.html index.htm;}error_page500 502 503 504/50x.html;location = /50x.html {roothtml;}}

推荐阅读