文章目录
- [1 nginx介绍](#1 nginx介绍)
-
- [1.1 相关网址](#1.1 相关网址)
- [1.2 nginx是什么?](#1.2 nginx是什么?)
- [1.3 nginx能做什么?](#1.3 nginx能做什么?)
- [1.4 为什么选择nginx?](#1.4 为什么选择nginx?)
- [2 安装nginx](#2 安装nginx)
-
- [2.1 安装依赖环境](#2.1 安装依赖环境)
- [2.2 下载、解压nginx安装包](#2.2 下载、解压nginx安装包)
- [2.3 配置安装选项](#2.3 配置安装选项)
- [2.4 安装nginx](#2.4 安装nginx)
1 nginx介绍
1.1 相关网址
1.2 nginx是什么?
nginx(" engine x ")是一个高性能的开源Web服务器软件,也可以作为反向代理服务器、负载均衡器和HTTP缓存等功能。它由俄罗斯的程序员Igor Sysoev开发,旨在解决C10K问题,即同时处理成千上万个并发连接的问题。Nginx采用事件驱动的架构,能够高效地处理大量并发请求。
最初由Igor Sysoev编写 ,并根据 2 条款 BSD 许可进行分发。F5 , Inc. 提供企业发行版、商业支持和培训。
1.3 nginx能做什么?
- Web服务器:Nginx可以作为一个高性能的Web服务器,用于提供静态文件、动态内容和代理服务。
- 反向代理:Nginx可以作为反向代理服务器,将客户端请求转发给后端服务器进行处理,实现负载均衡和高可用性。
- 负载均衡:Nginx支持基于轮询、IP哈希、最少连接等算法的负载均衡功能,可以将请求分发给多台后端服务器,提高系统的性能和可靠性。
- HTTP缓存:Nginx可以作为HTTP缓存服务器,缓存静态文件和动态内容,减轻后端服务器的压力,提高网站的访问速度。
- SSL/TLS加密:Nginx支持SSL/TLS协议,可以提供安全的HTTPS服务,保护网站和用户数据的传输安全。
- URL重写和重定向:Nginx支持灵活的URL重写和重定向功能,可以根据需求对URL进行重写和重定向,实现网站URL的美化和管理。
- 日志记录:Nginx可以记录访问日志、错误日志和性能日志等信息,帮助管理员监控和分析服务器运行状态。
- 动态模块支持:Nginx支持动态模块的加载和卸载,可以根据需要扩展和定制功能。
1.4 为什么选择nginx?
- 高性能:Nginx采用事件驱动的架构,能够高效地处理大量并发请求,具有优秀的性能表现。
- 高可靠性:Nginx具有良好的稳定性和可靠性,能够长时间稳定运行,不容易出现故障。
- 低内存消耗:Nginx的内存消耗较低,能够有效利用系统资源,提高服务器的性能和效率。
- 良好的扩展性:Nginx支持动态模块的加载和卸载,可以根据需要灵活扩展和定制功能。
- 灵活的配置选项:Nginx具有丰富的配置选项,可以根据需求灵活配置和定制服务器行为。
- 支持HTTP缓存:Nginx可以作为HTTP缓存服务器,提供静态文件和动态内容的缓存功能,提高网站的访问速度。
- 反向代理和负载均衡:Nginx支持反向代理和负载均衡功能,可以提高系统的性能和可用性。
- 安全性:Nginx支持SSL/TLS加密协议,可以提供安全的HTTPS服务,保护网站和用户数据的传输安全。
2 安装nginx
根据操作系统的不同,安装nginx的方式也有差异,可以参考nginx官网的安装文档进行操作。
本文演示使用源码包方式在CentOS 7.9
上安装nginx
2.1 安装依赖环境
主要有两个依赖环境:
- nginx是基于C语言开发的,所以安装nginx前需要安装C语言编译环境。
- HTTP rewrite 模块要求安装PCRE库。
- SSL模块要求OpenSSL库。
安装命令:
shell
yum -y install gcc pcre-devel zlib-devel openssl openssl-devel
2.2 下载、解压nginx安装包
-
从官网下载页面获取源码包下载地址。
-
使用
wget
下载压缩包shell# 切换到放压缩包的目录 cd /usr/local/src # 下载压缩包 wget https://nginx.org/download/nginx-1.26.2.tar.gz
-
解压并进入目录
shell# 解压 tar zxvf nginx-1.26.2.tar.gz # 进入解压后的目录 cd nginx-1.26.2
2.3 配置安装选项
解压完成后,目录内容如下:
在安装nginx之前,可以使用目录中的configure
命令来配置nignx的安装项目。
具体的配置项目及其作用,可以参考官网的Building nginx from Sources
我们指定安装选项如下(根据自己需要去设置,这里只是演示):
shell
./configure \
--sbin-path=/usr/local/nginx/nginx \
--conf-path=/usr/local/nginx/nginx.conf \
--pid-path=/usr/local/nginx/nginx.pid
执行结果:
2.4 安装nginx
shell
# 编译安装命令
make
make install
命令安装完成后,就可以切换到安装目录,然后使用nginx -v
命令来查看是否安装成功。
shell
# 切换到安装目录
cd /usr/local/nginx
# 查看版本
./nginx -v
