Linux 安装 Nginx
Linux 安装 Nginx
相关链接
- nginx 配置简介
- nginx 指令模块目录
一、nginx 简介
Nginx(发音为 “engine-x”)是一款高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。Nginx以其高效率、稳定性、丰富的功能集、简单的配置和低资源消耗而闻名。
-
性能卓越:Nginx被设计用来处理大量并发连接,这得益于其事件驱动架构。它可以轻松处理数以万计的同时连接请求,非常适合于现代互联网应用。
-
反向代理与负载均衡:Nginx可以作为反向代理服务器来分发客户端请求到多个后端服务器,从而实现负载均衡。它支持多种算法,如轮询、最少连接、IP哈希等,以优化流量分配。
-
静态文件服务:Nginx在提供静态内容(如HTML页面、图片、CSS样式表和JavaScript文件)方面表现非常出色,并且可以通过缓存机制进一步提高响应速度。
-
模块化设计:Nginx拥有一个核心以及一系列可加载的模块,这些模块提供了诸如重写规则、Gzip压缩、SSL/TLS加密等功能。用户可以根据需要选择启用或禁用特定模块。
-
易于配置:Nginx的配置文件简洁明了,使用基于文本的格式,便于理解和修改。官方文档详尽,社区活跃,遇到问题时很容易找到帮助和支持。
-
跨平台支持:虽然最初是为Unix-like系统开发的,但Nginx也能够在Windows上运行。不过,在Linux和其他类Unix操作系统上的性能通常更优。
-
安全特性:Nginx内置了一些安全特性,比如防止DDoS攻击的基本措施、限制速率、认证等,同时也可以通过配置来增强安全性。
-
更新与维护:由Igor Sysoev创建并于2004年首次公开发布以来,Nginx不断得到改进和发展。现在它分为开源版本(Nginx Open Source)和商业版(Nginx Plus),后者提供了额外的功能和服务级别协议(SLA)。
正向代理(Forward Proxy)
- 定义:正向代理是指客户端通过代理服务器访问互联网上的资源。在这种情况下,客户端配置指向代理服务器,所有对外的请求都会先发送到这个代理服务器。
- 功能:它代表客户端向目标服务器发起请求,并将响应返回给客户端。正向代理可以用来隐藏客户端的真实IP地址、绕过网络审查或过滤、加速访问速度(通过缓存机制),以及控制内部网络用户对外部网络的访问。
- 使用场景:通常用于企业内部网中,以便于管理和监控员工对互联网的访问;也可以帮助用户访问被地理限制或其他形式封锁的内容。
反向代理(Reverse Proxy)
- 定义:反向代理位于服务器端,对外界表现为一个单一的服务入口点,实际上它可以将接收到的请求转发给多个后端服务器中的一个来处理。外部客户端不知道也不需要知道实际提供服务的是哪个后端服务器。
- 功能:反向代理能够平衡负载、提高性能(例如通过缓存静态内容)、增强安全性(如隐藏后端服务器结构,保护免受直接攻击)等。此外,它还可以实现SSL卸载、压缩、速率限制等功能。
- 使用场景:广泛应用于Web应用架构中,用于分发流量到不同的应用服务器、优化网站性能、简化URL结构、统一管理SSL证书等。常见的反向代理软件包括Nginx、Apache HTTP Server、HAProxy等。
二、nginx 下载
nginx 官网
- 访问 nignx官网 -> 进入 download 页面
- 任意选择一个版本下载即可
三、nginx 安装
安装必要的依赖
yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel
- 使用
tar
命令解压到指定目录下
# 解压到 /usr/local 路径下
[root@iZbp1dfulgjy4kd3ev4y7bZ software]# tar -zxvf nginx-1.26.2.tar.gz -C /usr/local/
# 查看解压文件列表
[root@iZbp1dfulgjy4kd3ev4y7bZ local]# cd /usr/local/nginx-1.26.2/
[root@iZbp1dfulgjy4kd3ev4y7bZ nginx-1.26.2]# ls
auto CHANGES CHANGES.ru conf configure contrib html LICENSE man README src
- 使用
make
命令编译安装
# 设置安装路径
[root@iZbp1dfulgjy4kd3ev4y7bZ nginx-1.26.2]# ./configure --prefix=/usr/local/nginx
# make 编译安装
[root@iZbp1dfulgjy4kd3ev4y7bZ nginx-1.26.2]# make && make install
- 安装成功
[root@iZbp1dfulgjy4kd3ev4y7bZ nginx]# pwd
/usr/local/nginx
# nginx目录如下
[root@iZbp1dfulgjy4kd3ev4y7bZ nginx]# ls
conf html logs sbin
四、nginx 启动
- 进入安装路径
[root@linux-1 /]# cd /usr/local/nginx/sbin/
[root@linux-1 sbin]# ./nginx
[root@linux-1 sbin]# ps -ef | grep nginx
root 23041 1 0 10:49 ? 00:00:00 nginx: master process ./nginx
nobody 23042 23041 0 10:49 ? 00:00:00 nginx: worker process
root 23208 22905 0 10:52 pts/1 00:00:00 grep --color=auto nginx
[root@linux-1 sbin]#
# nginx 相关命令
# 1.启动
[root@linux-1 sbin]# ./nginx
# 2.关闭
[root@linux-1 sbin]# ./nginx -s stop
# 3.重启
[root@linux-1 sbin]# ./nginx -s reload
# 4.语法检查
[root@linux-1 sbin]# ./nginx -t