目录
前言
Nginx(发音为“engine x”)是一个开源的、高性能的HTTP和反向代理服务器,同时也是IMAP/POP3/SMTP代理服务器,Nginx以其高并发处理能力(特别是静态资源),低系统资源占用,以及丰富的功能集而闻名。
Nginx的优势在于其稳定性和高并发处理能力。它可以轻松处理高达50,000个并发连接数,这使得它在处理大量用户请求时表现尤为出色。此外,Nginx还具有反向代理负载均衡和缓存服务的功能,类似于专业的代理软件和缓存服务软件。
Nginx支持模块化的结构,这使得它在功能扩展和定制方面非常灵活。它可以在内部直接支持Rails和PHP程序对外进行服务,也可以作为HTTP代理服务对外进行服务。
Nginx可以运行在多种操作系统中,包括UNIX、Linux、BSD、Mac OS X、Solaris以及Microsoft Windows等。这使得它成为了一个跨平台的解决方案,适用于各种规模和类型的网站和应用。
总的来说,Nginx是一个强大且灵活的Web服务器和反向代理服务器,具有出色的性能、稳定性和丰富的功能集。它在处理高并发请求、提供负载均衡和缓存服务等方面表现出色,是许多网站和应用的首选解决方案。
Redhat基于源码编译安装Nginx是一种灵活且可定制的安装方式。通过从Nginx官网下载源码包,并在Redhat系统上进行编译安装,可以实现更多高级功能和个性化配置。此方式需要用户具备一定的Linux系统知识和编译经验,但相对于直接安装包安装,源码编译安装可以更好地满足特定需求,并提升Nginx的性能和稳定性。安装前需准备好相关依赖软件包,如C、C++编译器等。安装过程虽然相对繁琐,但操作并不复杂。安装完成后。以下是详细的安装过程:
安装步骤
1.安装前的准备:
配置yum源:
网络源就有很多了,我们熟知的像阿里云,清华源,网易云,中科大等网络源,但是对于 redhat 9.0 这个新版本,这些熟知的网络源就暂时不一定有相应的版本了,下面我们来配阿里云源
因为新建的Redhat9在未注册激活之前是没有yum源的配置文件的,所以需要我们自己新建一个yum源文件的配置文件
vim /etc/yum.repos.d/aliyun_yum.repo
内容如下
[ali_baseos]
name=ali_baseos
baseurl=https://mirrors.aliyun.com/centos-stream/9-stream/BaseOS/x86_64/os/
gpgcheck=0
[ali_appstream]
name=ali_appstream
baseurl=https://mirrors.aliyun.com/centos-stream/9-stream/AppStream/x86_64/os/
gpgcheck=0
创建缓存
yum makecache
跟新yum源
yum -y update
2.安装依赖包:
Nginx在Linux系统中的安装和运行依赖于一些关键的软件包。这些依赖包对于确保Nginx的正常运行以及功能的完整性至关重要。以下是Nginx的主要依赖包:
GCC:GCC是GNU编译器集合的简称,它是一组编译工具,能够将源代码编译成可执行文件。安装Nginx需要先从官网下载源码进行编译,而编译过程就依赖于GCC环境。
yum -y install gcc gcc-c++ autoconf automake make
PCRE(Perl Compatible Regular Expressions):PCRE是一个用C语言编写的正则表达式库。Nginx的HTTP模块需要使用PCRE来解析正则表达式。此外,pcre-devel是使用PCRE开发的二次开发库,因此Nginx也需要这个库。
yum -y install pcre pcre-devel
zlib:zlib是一个用于数据压缩的库。Nginx使用zlib进行gzip压缩,从而可以有效地减少传输的数据量,提高网页加载速度。zlib-devel是zlib的开发库,用于编译需要zlib支持的软件。
yum -y install zlib zlib-devel make libtool
OpenSSL:OpenSSL是一个强大的安全套接字层密码库,包括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议。Nginx使用OpenSSL来提供HTTPS支持,确保数据的安全传输。openssl-devel包含了用于开发OpenSSL应用程序的库和头文件。
yum install openssl openssl-devel -y
3.下载Nginx源码包并解压:
Nginx源码包需要到官网拉取下载
官网下载
wget https://nginx.org/download/nginx-1.20.2.tar.gz
解压
tar -zxvf nginx-1.20.2.tar.gz
4.进入解压后的目录并配置:
cd nginx-1.20.2
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --user=nginx --group=nginx
5.编译和安装:
编译
make
安装
make install
6.启动Nginx:
启动服务
/usr/local/nginx/sbin/nginx
查看Nginx情况
ps -ef | grep nginx
浏览器IP访问
7.设置开机自启:
目前Nginx都是通过命令执行的,在Nginx运行过程中,需要Nginx作为系统的服务运行。以systemctl命令运行服务
配置服务文件
vim /lib/systemd/system/nginx.service
内容如下
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx reload
ExecStop=/usr/local/nginx/sbin/nginx quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
创建服务
systemctl enable nginx.service
使用服务
systemctl status nginx