Nginx在Linux上的安装部署

本文详细介绍了Nginx的特性、作用以及下载安装步骤。Nginx是一个高性能的HTTP和反向代理服务器,适用于搭建虚拟主机、服务反向代理、负载均衡和动静分离。在Linux环境下,通过下载稳定版Nginx源码,安装依赖(如gcc、pcre、zlib、openssl等),然后进行configure配置和make编译安装,最终实现Nginx的部署。
摘要由CSDN通过智能技术生成

Nginx

一、 Ngnix是什么

  1. Nginx (“engine x”) 是一个高性能的 静态HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。
  2. 第一个公开版本0.1.0发布于2004年10月4日。
  3. 将其源代码以类BSD许可证的形式发布,因它的稳定性,丰富的功能集,示例配置文件和低系统资源的消耗闻名
  4. 官方测试nginx能够支撑5万并发链接,并且cpu,内存等资源消耗非常低,运行非常稳定

二、Nginx的作用

  1. 搭建虚拟主机
  2. 服务的反向代理
  3. 在反向代理中配置集群的负载均衡
  4. 在反向代理种配置集群的动静分离

2.1 正向代理

正向代理是对客户端的代理。客户端想要访问服务端获取资源,但是由于某些原因不能直接访问,所以可以由中间主机搭建桥梁来实现资源的访问。此时就可以称主机为客户端的正向代理服务器 
![在这里插入图片描述](https://img-blog.csdnimg.cn/7d53135e866940529dfa8ca9bac4e707.png)

2.2 反向代理

​ 反向代理方式是指以代理服务器来接受internet上的连接请求,然后将请求方式转发给内部网络上的服务器,并将从服务器上的得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
在这里插入图片描述

三、Nginx下载与安装

3.1 Nginx下载

官网下载Nginx软件http://nginx.org
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

Nginx 官方提供了三个类型的版本:

Mainline Version:主线版,是最新版,但未经过过多的生产测试。

Stable Version:稳定版,生产环境使用版本。

Legacy Version:老版本。

建议下载Stable Version。

3.2 Nginx的源码安装

3.2.1 安装Nginx的依赖

nginx是c语言开发的,建议在linux上运行,现在使用的环境是Centos 7

1.gcc

安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,需要安装gcc

yum install -y gcc make automake

2.pcre

PCRE是一个perl库,包括perl兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装Pcre库

yum install -y pcre pcre-devel

注:pcre-devel是使用pcre开发的一个二次开发库。nginx也需要此库

3.zlib

zlib库提供了很多种压缩和解压的方式,nginx使用zlib对http包下的内容进行gzip,所以需要在linux上安装zlib库

yum install -y zlib zlib-devel

4.Openssl

Openssl是一个强大的安全套接字层密码库,包括主要的密码算法,常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其他目的。

nginx不仅支持http协议,还支持https(即在ssl协议上传输http),所以需要在linux安装openssl库。

yum install -y openssl openssl-devel

5.统一安装依赖环境命令:

yum -y install gcc make automake pcre-devel zlib zlib-devel openssl openssl-devel
3.2.2 安装 Nginx
  1. 创建存放源文件的文件夹

    首先在目录/opt下创建apps目录,用于存放源文件以及解压后的文件

  2. 上传Nginx到创建的目录下

  3. 解压Nginx

    [root@node1 apps]# pwd
    /opt/apps
    [root@node1 apps]# ls
    nginx-1.20.1.tar.gz
    [root@node1 apps]# tar -zxvf nginx-1.20.1.tar.gz
    [root@node1 apps]# cd  nginx-1.20.1
    

    进入到 Nginx 解压包目录/opt/apps/nginx-1.20.1 目录中,查看 Nginx 的目录。

    其中各个目录中存放的文件作用为:

    auto :存放Nginx自动安装的相关文件
    conf :存放Nginx服务器配置的文件
    configure :命令,用于对即将安装的软件的配置,完成makefile编译文件的生成
    contrib :存放有其他机构贡献的文档资料
    html :存放Nginx欢迎界面
    man :manual,手册,存放Nginx帮助文档
    src :存放Nginx源码生成
    
  4. 生成makefile

    在Nginx解压的目录下运行make命令,用于完成编译。但此时会给出提示:没有指定目标,并且没有发现编译文件makefile

​ 编译命令make需要根据编译文件的makefile进行编译,所以在编译之前需要先生成编译文件makefile。使用configure命令可以生成该文件。

configure命令需要配置的参数可以使用–help查看,这些参数可以分成三类:

  • 第一类:基本信息的配置

在这里插入图片描述

–prefix:Nginx 安装目录。注意,安装目录与解压目录不一样

–sbin-path:Nginx 命令文件

–modules-path:Nginx 模块存放路径

–conf-prefix:Nginx 配置文件存放路径

–pid-path:Nginx 的进程 id 文件

–error-log-path:错误日志文件

–http-log-path:http访问日志文件

  • 第二类:默认没有安装,可以指定安装的模块,使用–with 开头。Nginx 的高扩展性就体现在这里。

在这里插入图片描述

  • 第三类:默认已经安装,可以指定卸载的模块,使用–without 开头。

在这里插入图片描述

然后进行配置。命令中每一行的最后添加反斜杠表示当前命令没有结束,回车不会执行命令。执行成功后,会给出配置报告。

[root@node1 nginx-1.20.1]# mkdir -p /var/temp/nginx/client
[root@node1 nginx-1.20.1]# pwd
/opt/apps/nginx-1.20.1
[root@node1 nginx-1.20.1]# ./configure \
--prefix=/usr/local/nginx \
--pid-path=/usr/local/nginx/logs/nginx.pid \
--error-log-path=/usr/local/nginx/logs/error.log \
--http-log-path=/usr/local/nginx/logs/access.log \
--with-http_ssl_module \
--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

配置成功后,再次查看 Nginx 解压目录,发现其中多出了一个文件 Makefile。后面的编译就是依靠该文件进行的。

  1. 编译安装

    这是两个命令,make为编译,make install为安装命令,可以分别执行。&&表示将两个命令连接起来,会在前面命令执行结束后执行后面的命令

    make && make install
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值