超实用是Nginx介绍与安装指南

超实用是Nginx介绍与安装指南

前言

一、Nginx介绍

1.1:何为Nginx
1.2:Nginx工作原理
1.3:Nginx优点

二、Nginx安装指南

2.1:安装支持的环境依赖
2.2:创建Nginx运行的用户、组
2.3:编译安装Nginx
2.4:优化路径
2.5:检查配置文件
2.6:启动、停止Nginx
2.7:添加系统服务

前言

Nginx (engine x) 是一个高性能HTTP反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。

一、Nginx介绍

1.1:何为Nginx

Nginx是一款轻量级的Web 服务器/反向代理反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东新浪网易腾讯淘宝等。

1.2:Nginx工作原理

Nginx 本身做的工作实际很少,当它接到一个 HTTP 请求时, 它仅仅是通过查找配置文件将此次请求映射到一个 location block,而此 location 中所配 置的各个指令则会启动不同的模块去完成工作,因此模块可以看做 Nginx 真正的劳动工作者。

Nginx 的模块从功能上分为如下三类:

  • Handlers(处理器模块):此类模块直接处理请求,并进行输出内容和修改 headers 信息等操作。Handlers 处理器模块一般只能有一个
  • Filters(过滤器模块):此类模块主要对其他处理器模块输出的内容进行修改操作,最后由 Nginx 输出
  • Proxies(代理类模块):此类模块是 Nginx 的 HTTP Upstream 之类的模块,这些模块主要与后端一些服务比如 FastCGI 等进行交互,实现服务代理和负载均衡等功能

在这里插入图片描述

1.3:Nginx优点

Nginx(发音为[engine x])专为性能优化而开发,其最知名的优点是它的稳定性和低系统资源消耗,以及对HTTP并发连接的高处理能力(单台物理服务器可支持30 000~50000个并发请求)。正因为如此,大量提供社交网络、新闻资讯、电子商务及虚拟主机等服务的企业纷纷选择Nginx来提供Web服务。

二、Nginx安装指南

2.1:安装支持的环境依赖
[root@Nginx opt]# yum -y install \
> gcc \    ####安装gcc库
> gcc-c++ \    ####安装gcc-c++语言
> make \    ####安装编译包
> pcre-devel \   ####兼容正则表达式
> expat -devel \   ####安装xml解析库
> prel \      ####安装prel语言
> zlib     ####安装压缩文件库
2.2:创建Nginx运行的用户、组
  • Nginx服务进程默认以nobody身份运行,建议为其创建专门的 用户账户,以便更准确地控制其访问权限,增加灵活性、降低安全风险。例如,穿件一个名为nginx的用户,不建立宿主文件夹,也禁止登录到shell环境
[root@Nginx ~]# useradd -M -s /sbin/nologin nginx
2.3:编译安装Nginx
  • 配置Nginx的编译选项时,将安装目录设为/usr/local/nginx,运行用户和组均设为nginx;启用http_stub_status_module模块以支持状态统计,便于查看服务器的连接信息
[root@Nginx opt]# tar xzvf nginx-1.15.9.tar.gz 
[root@Nginx opt]# cd nginx-1.15.9/
[root@Nginx nginx-1.15.9]# ./configure \
> --prefix=/usr/local/nginx \    ####指定安装路径
> --user=nginx \                ####指定用户账户
> --group=nginx \               ####指定用户组
> --with-http_stub_status_module   ####启用模块,支持状态统计

[root@Nginx nginx-1.15.9]# make && make install
2.4:优化路径
  • 为了使Nginx服务器的运行更加方便,可以为主程序nginx创建链接文件,以便管理员直接执行“nginx”命令就可以调用Nginx的主程序
[root@nginx nginx-1.15.9]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin
[root@nginx nginx-1.15.9]# ls -l /usr/local/sbin/nginx 
lrwxrwxrwx. 1 root root 27 10月  9 00:39 /usr/local/sbin/nginx -> /usr/local/nginx/sbin/nginx
2.5:检查配置文件
  • 与Apache的主程序httpd类似,Nginx的主程序也提供了"-t"选项用来对配置文件进行检查,以便找出不当或错误的配置。配置文件 nginx.conf 默认位置安装目录下的 conf/子目录中。若要检查位置其他位置的配置文件。可以用 “-c” 选项来指定路径
[root@nginx nginx-1.15.9]# nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
2.6:启动、停止Nginx

直接运行 Nginx 即可启动 Nginx 服务器,这种方式将使用默认的配置文件,若要改用其他配置文件,需添加 “-c 配置文件路径”选项来指定路径。需要注意的是,若服务器中有 httpd 等其他Web服务软件,应采取措施(修改端口、停用或卸载)避免冲突。

[root@nginx nginx-1.15.9]# netstat -anpt | grep nginx
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      24176/nginx: master 
[root@nginx nginx-1.15.9]# yum -y install lynx
[root@nginx nginx-1.15.9]# lynx 127.0.0.1

在这里插入图片描述

2.7:添加系统服务
  • 为了使 Nginx 服务的启动、停止、重载等操作更加方便,可以编写基与 Nginx 服务控制文件使用 systemctl 工具来进行管理
[root@nginx systemd]# cd /lib/systemd/system
[root@nginx system]# vim nginx.service
[Unit]
Description=nginx    ####描述性信息
After=network.target  ####服务类别
[Service]
Type=forking            ###后台运行形式
PIDFile=/usr/local/nginx/logs/nginx.pid         ###PID文件位置
ExecStart=/usr/local/nginx/sbin/nginx           ###启动服务
ExecReload=/usr/bin/kill -s HUP $MAINPID          ###根据PID重载配置
ExecStop=/usr/bin/kill -s QUIT $MAINPID             ###根据PID终止进程
PrivateTmp=true    ####临时文件开启
[lnstall]
WantedBy=multi-user.target   ####多用户
~                              
[root@nginx system]# chmod 754 nginx.service       ####赋予权限
[root@nginx system]# systemctl start nginx.service    ####通过systemctl控制Nginx
[root@nginx system]# chmod 754 nginx.service       ####赋予权限
[root@nginx system]# systemctl start nginx.service    ####通过systemctl控制Nginx
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值