【编译安装】使用CentOS7安装编译安装nginx-1.22版本实战
创始人
2025-06-01 06:57:29

前言

nginx使用的场景比较多,实践出真知,我们一起来看看如何使用。

本文收录于专栏【运维系列-架构与服务】专栏中的《linux基本功-系统服务实战篇》,一起学习,持续精进

文章目录

  • 前言
  • 一. 准备实验环境
    • 1.1 下载nginx 1.22 的包
    • 1.2 安装可能用到的依赖包
  • 二 . 安装配置nginx
    • 2.1 解压nginx
    • 2.2 编译安装nginx
    • 2.3 启动nginx
    • 2.4 配置环境变量
  • 总结

一. 准备实验环境

1.1 下载nginx 1.22 的包

官网地址:https://nginx.org/en/download.html
在这里插入图片描述
版本说明:

  • Mainline version:Mainline 是 Nginx 目前主力在做的版本,可以说是开发版
  • Stable version:最新稳定版,生产环境上建议使用的版本
  • Legacy versions:遗留的老版本的稳定版

单词注解:

Mainline美[ˈmeɪnlaɪn] 主流的

legcy: 美[ˈleɡəsi] 遗留的,已停产的

下载:wget -c https://nginx.org/download/nginx-1.22.1.tar.gz

wget -c https://nginx.org/download/nginx-1.22.1.tar.gz

1.2 安装可能用到的依赖包

编译nginx可能会用到gcc, prce,zlib,opessl,这里使用yum进行安装。

[root@mufeng41 ~]# yum install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel

二 . 安装配置nginx

2.1 解压nginx

root@mufeng41 ~]# ls
anaconda-ks.cfg  initial-setup-ks.cfg  nginx-1.22.1.tar.gz  公共  模板  视频  图片  文档  下载  音乐  桌面
[root@mufeng41 ~]# tar xf nginx-1.22.1.tar.gz 
[root@mufeng41 ~]# cd nginx-1.22.1/
[root@mufeng41 nginx-1.22.1]# ls
auto  CHANGES  CHANGES.ru  conf  configure  contrib  html  LICENSE  man  README  src
[root@mufeng41 nginx-1.22.1]#

2.2 编译安装nginx

[root@mufeng41 nginx-1.22.1]# ./configure --prefix=/usr/local/nginx 

接下来使用make 和make install 进行安装

make && make install

2.3 启动nginx

到路径 /usr/local/nginx/sbin/下进行启动:

[root@mufeng41 nginx-1.22.1]# cd /usr/local/nginx/sbin/
[root@mufeng41 sbin]# ls
nginx
[root@mufeng41 sbin]# ./nginx 
[root@mufeng41 sbin]# 

其他操作:

  • ./nginx -s stop 停机
  • ./nginx -s quit 正常停止
  • ./nginx -s reload 重新加载
  • ./nginx -t 查看配置文件是否正确
[root@mufeng41 sbin]# ./nginx  -V
nginx version: nginx/1.22.1
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) 
configure arguments: --prefix=/usr/local/nginx
[root@mufeng41 sbin]# 

配置文件路径:

[root@mufeng41 nginx]# ls
client_body_temp  conf  fastcgi_temp  html  logs  proxy_temp  sbin  scgi_temp  uwsgi_temp
[root@mufeng41 nginx]# pwd
/usr/local/nginx

2.4 配置环境变量

配置文件 vim /etc/profile

[root@mufeng41 sbin]# cat >>/etc/profile<< EOF 
> export NGINX_HOME=/usr/local/nginx
> export PATH=$PATH:$NGINX_HOME/sbin
> EOF

刷新配置:

[root@mufeng41 sbin]# source /etc/profile

将Nginx设置为系统服务,创建文件:touch /lib/systemd/system/nginx.service,打开文件vim /lib/systemd/system/nginx.service,添加如下配置:

[Unit]
Description=nginx service
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target

备注:

  • Description:描述服务
  • After:描述服务类别
  • [Service]服务运行参数的设置
  • Type=forking是后台运行的形式
  • ExecStart为服务的具体运行命令
  • ExecReload为重启命令
  • ExecStop为停止命令
  • PrivateTmp=True表示给服务分配独立的临时空间

WantedBy=multi-user.target 修改为图形界面执行
注意:

  • [Service]的启动、重启、停止命令全部要求使用绝对路径
  • [Install]运行级别下服务安装的相关设置,可设置为多用户,即系统运行级别为3

设置开机自启:systemctl enable nginx

配置好后,就可以使用nginx命令进行管理了:

systemctl start nginx               启动服务
systemctl stop nginx               停止服务
systemctl restart nginx             重新启动服务
systemctl list-units --type=service     查看所有已启动的服务
systemctl status nginx                查看服务当前状态
systemctl enable nginx               设置开机自启动
systemctl disable nginx               停止开机自启动

总结

以上就是编译安装nginx的全过程,希望对你有用。

相关内容

热门资讯

桐昆股份股价涨5.02%,国投... 12月17日,桐昆股份涨5.02%,截至发稿,报15.05元/股,成交3.58亿元,换手率1.02%...
海光信息股价涨5.04%,华泰... 12月17日,海光信息涨5.04%,截至发稿,报207.71元/股,成交32.87亿元,换手率0.7...
广发证券股价涨5.05%,农银... 12月17日,广发证券涨5.05%,截至发稿,报22.25元/股,成交15.50亿元,换手率1.21...
胜宏科技股价涨5.04%,嘉合... 12月17日,胜宏科技涨5.04%,截至发稿,报301.55元/股,成交101.97亿元,换手率4....
胜宏科技股价涨5.04%,宝盈... 12月17日,胜宏科技涨5.04%,截至发稿,报301.55元/股,成交102.02亿元,换手率4....