系统:Rocky Linux 8
2.1 RPM包安装
[root@Rocky8-node1 ~]# wget -c https://nginx.org/packages/rhel/8/x86_64/RPMS/nginx-1.24.0-1.el8.ngx.x86_64.rpm [root@Rocky8-node1 ~]# yum install nginx-1.24.0-1.el8.ngx.x86_64.rpm -y [root@Rocky8-node1 ~]# nginx -v nginx version: nginx/1.24.0
2.2 源码(二进制)安装
2.2.1 下载并解压安装包
[root@Rocky8-node1 ~]# wget -c https://nginx.org/download/nginx-1.24.0.tar.gz [root@Rocky8-node1 ~]# tar xf nginx-1.24.0.tar.gz -C /usr/local/src/
2.2.2 安装依赖
[root@Rocky8-node1 ~]# yum install gcc gcc-c++ make pcre-devel openssl-devel -y
2.2.3 编译前环境配置
[root@Rocky8-node1 ~]# mkdir -p /var/log/nginx #创建配置目录 [root@Rocky8-node1 ~]# cd /usr/local/src/nginx-1.24.0/ [root@Rocky8-node1 nginx-1.24.0]# ./configure --prefix=/usr/local/nginx \ > --sbin-path=/usr/sbin/nginx \ > --http-log-path=/var/log/nginx/access.log \ > --error-log-path=/var/log/nginx/error.log \ > --pid-path=/run/nginx.pid
-
--prefix=/usr/local/nginx
:设置Nginx的安装路径为/usr/local/nginx。 -
--sbin-path=/usr/sbin/nginx
:设置Nginx二进制文件的路径为/usr/sbin/nginx。 -
--http-log-path=/var/log/nginx/access.log
:设置HTTP请求日志文件的路径为/var/log/nginx/access.log。 -
--error-log-path=/var/log/nginx/error.log
:设置错误日志文件的路径为/var/log/nginx/error.log。 -
--pid-path=/run/nginx.pid
:设置Nginx主进程ID文件的路径为/run/nginx.pid。
注意:获取这些内容可以在测试环境使用RPM安装Nginx,通过nginx -V
命令获取
2.2.4 编译并安装
[root@Rocky8-node1 nginx-1.24.0]# make && make install [root@Rocky8-node1 nginx-1.24.0]# nginx -v nginx version: nginx/1.24.0
2.2.5 配置系统服务脚本
[root@Rocky8-node1 nginx-1.24.0]# vim /usr/lib/systemd/system/nginx.service [Unit] Description=The nginx HTTP and reverse proxy server After=network.target remote-fs.target nss-lookup.target [Service] Type=forking PIDFile=/run/nginx.pid ExecStartPre=/usr/bin/rm -f /run/nginx.pid ExecStartPre=/usr/sbin/nginx -t ExecStart=/usr/sbin/nginx ExecReload=/bin/kill -s HUP $MAINPID KillSignal=SIGQUIT TimeoutStopSec=5 KillMode=mixed PrivateTmp=true [Install] WantedBy=multi-user.target [root@Rocky8-node1 nginx-1.24.0]# systemctl daemon-reload #重新加载systemd管理器的配置
2.2.6 启动停止测试
[root@Rocky8-node1 nginx-1.24.0]# systemctl start nginx #正常启动 [root@Rocky8-node1 nginx-1.24.0]# systemctl is-active nginx.service active [root@Rocky8-node1 nginx-1.24.0]# ps -ef | grep nginx root 10947 1 0 16:25 ? 00:00:00 nginx: master process /usr/sbin/nginx nobody 10948 10947 0 16:25 ? 00:00:00 nginx: worker process root 10950 1613 0 16:25 pts/0 00:00:00 grep --color=auto nginx [root@Rocky8-node1 nginx-1.24.0]# systemctl stop nginx.service [root@Rocky8-node1 nginx-1.24.0]# systemctl is-active nginx.service inactive [root@Rocky8-node1 nginx-1.24.0]# ps -ef | grep nginx root 10977 1613 0 16:25 pts/0 00:00:00 grep --color=auto nginx
2.3 Nginx配置文件
[root@Rocky8-node1 ~]# rpm -qc nginx /etc/logrotate.d/nginx /etc/nginx/conf.d/default.conf /etc/nginx/fastcgi_params /etc/nginx/mime.types /etc/nginx/nginx.conf /etc/nginx/scgi_params /etc/nginx/uwsgi_params
-
/etc/logrotate.d/nginx
:Nginx 的日志轮转配置文件,用于管理 Nginx 日志的轮转和压缩。 -
etc/nginx/conf.d/default.conf
:Nginx 默认的服务器配置文件,可以在此文件中进行网站和虚拟主机的配置。 -
etc/nginx/fastcgi_params
:Nginx FastCGI 配置文件,包含了一些 FastCGI 的参数设置。 -
/etc/nginx/mime.types
:Nginx MIME 类型配置文件,定义了文件扩展名与 MIME 类型的映射关系。 -
/etc/nginx/nginx.conf
:Nginx 主配置文件,包含了全局的 Nginx 配置项和指令。 -
/etc/nginx/scgi_params
:Nginx SCGI 配置文件,定义了一些 SCGI 的参数设置。 -
/etc/nginx/uwsgi_params
:Nginx uWSGI 配置文件,定义了一些 uWSGI 的参数设置。