CentOS7源码安装nginx并编写服务脚本

准备

下载nginx源码包

  • 在源码安装前,我们得先下载nginx源码包
  • https://nginx.org/download/
  • 在这里插入图片描述
  • 这里我下载的是nginx-1.23.0.tar.gz版本
  • 下载完之后,我们使用mobaxtermnginx-1.23.0.tar.gz上传到我们的Linux服务器/root/目录下
[root@CentOS ~]# ls
anaconda-ks.cfg  nginx-1.23.0.tar.gz

关闭防火墙

[root@centos ~]# systemctl disable firewalld
[root@centos ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:firewalld(1)

关闭selinux

[root@centos ~]# vim /etc/selinux/config

在这里插入图片描述

安装依赖环境

[root@centos ~]# yum install gcc gcc-g++ pcre-devel openssl-devel zlib-devel make -y

解压

  • 解压
[root@centos ~]# tar -zxvf nginx-1.23.0.tar.gz
  • 改名
[root@centos ~]# ls
anaconda-ks.cfg  nginx-1.23.0  nginx-1.23.0.tar.gz
[root@centos ~]# mv nginx-1.23.0 nginx    #改名
[root@centos ~]# ls
anaconda-ks.cfg  nginx  nginx-1.23.0.tar.gz
  • 进入nginx目录
[root@centos ~]# cd nginx
[root@centos nginx]# ls
auto  CHANGES  CHANGES.ru  conf  configure  contrib  html  LICENSE  man  README  src

编译

[root@centos nginx]# ./configure

在这里插入图片描述

安装

[root@centos nginx]# make && make install
  • 默认安装路径在/usr/local/nginx
  • 切换到/usr/local/nginx
[root@centos nginx]# pwd
/root/nginx
[root@centos nginx]# cd /usr/local/nginx/
[root@centos nginx]# pwd
/usr/local/nginx
[root@centos nginx]# ls
conf  html  logs  sbin

测试

[root@centos nginx]# ls
conf  html  logs  sbin
[root@centos nginx]# cd sbin
[root@centos sbin]# ls
nginx
[root@centos sbin]# ./nginx     #启动服务

在这里插入图片描述

编写服务脚本,通过systemctl实现服务启动与关闭

  • Linux系统中,systemd是初始化系统和服务管理器的标准,用于管理系统的启动和运行。systemd的配置文件通常位于/etc/systemd/system//usr/lib/systemd/system/目录下,这些文件以.service结尾,定义了服务的启动、运行、停止等行为。
  • systemdCentOS系统操作系统开始启用新的系统和服务管理器

在这里插入图片描述

[root@centos ~]# vim /usr/lib/systemd/system/nginx.service
[Unit]
Description=ngixn server
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx

[Install]
WantedBy=multi-user.target
  • 重新加载
[root@centos ~]# systemctl daemon-reload

测试

[root@centos ~]# systemctl start nginx
[root@centos ~]# systemctl status nginx
● nginx.service - ngixn server
   Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)
   Active: active (running) since 二 2024-07-02 00:21:08 CST; 6s ago
  Process: 4209 ExecStart=/usr/local/nginx/sbin/nginx (code=exited, status=0/SUCCESS)
 Main PID: 4210 (nginx)
   CGroup: /system.slice/nginx.service
           ├─4210 nginx: master process /usr/local/nginx/sbin/nginx
           └─4211 nginx: worker process

7月 02 00:21:08 centos systemd[1]: Starting ngixn server...
7月 02 00:21:08 centos systemd[1]: Started ngixn server.

在这里插入图片描述

[root@centos ~]# systemctl stop nginx
[root@centos ~]# ps -ef | grep nginx
root       4222   1412  0 00:22 pts/0    00:00:00 grep --color=auto nginx
[root@centos ~]# systemctl restart nginx
[root@centos ~]# systemctl status nginx
● nginx.service - ngixn server
   Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)
   Active: active (running) since 二 2024-07-02 00:23:03 CST; 10s ago
  Process: 4229 ExecStart=/usr/local/nginx/sbin/nginx (code=exited, status=0/SUCCESS)
 Main PID: 4230 (nginx)
   CGroup: /system.slice/nginx.service
           ├─4230 nginx: master process /usr/local/nginx/sbin/nginx
           └─4231 nginx: worker process

7月 02 00:23:03 centos systemd[1]: Starting ngixn server...
7月 02 00:23:03 centos systemd[1]: Started ngixn server.
  • 11
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

^~^前行者~~~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值