Linux 安装 Nginx 并配置为系统服务(超详细)

简介: Linux 安装 Nginx 并配置为系统服务(超详细)

前言


Nginx是一款卓越的高性能Web服务器,被广泛用于托管网站和应用程序。本文旨在为您提供详细的指南,帮助您在Linux系统上成功安装、配置和启动Nginx服务器。通过这一过程,您将了解如何将Nginx集成到您的系统中,以便轻松地托管您的网站和应用程序。


安装 Nginx


安装依赖项


在开始安装Nginx之前,首先需要安装一些依赖项,以确保Nginx编译和运行正常。打开终端并执行以下命令:

yum install -y wget gcc-c++ pcre-devel zlib-devel openssl-devel

这将安装必要的工具和库,以支持Nginx的编译和运行。


下载Nginx


从Nginx官网下载最新的稳定版本。您可以在https://nginx.org/en/download.html上找到最新版本的下载链接。

3.png

# 例如,下载Nginx 1.24.0版本
wget https://nginx.org/download/nginx-1.24.0.tar.gz

解压Nginx


解压下载的Nginx源代码包:

tar -zxvf nginx-1.24.0.tar.gz

编译和安装


进入解压后的Nginx目录并进行编译和安装:

# 切换到 Nginx 解压目录
cd nginx-1.24.0
# 编译前的配置和依赖检查
./configure
# 编译安装
make && make install

Nginx安装完成后,默认自动创建 /usr/local/nginx 目录,并创建必要的文件和目录,包括配置文件、日志文件、HTML文件等。

4.png

防火墙设置


如果您的系统启用了防火墙,需要关闭防火墙

# 查看防火墙状态
systemctl status firewalld
# 关闭防火墙
systemctl stop firewalld
# 开机禁用防火墙
systemctl disable firewalld

5.png

启动Nginx


进入Nginx的安装目录:

cd /usr/local/nginx/sbin

然后,启动Nginx服务器:

./nginx

您现在可以通过浏览器访问您的服务器的IP地址或域名来验证Nginx是否正常工作。

6.png

配置 Nginx 为系统服务


将 Nginx 制作成系统服务让你无需手动到 Nginx 安装目录下执行命令来启动它,而是系统会在开机时自动启动 Nginx,让启动过程更加方便和自动化。


配置 Nginx 服务文件


在 /etc/systemd/system/ 目录下创建一个新的服务文件,例如 nginx.service:

vi /etc/systemd/system/nginx.service

在打开的文件中,添加以下内容:

[Unit]
Description=Nginx HTTP Server
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 stop
PrivateTmp=true
[Install]
WantedBy=multi-user.target

执行以下命令重新加载 systemd 配置文件:

systemctl daemon-reload

启动 Nginx 服务


执行以下命令启动 Nginx 服务:

systemctl start nginx

现在,Nginx 将作为系统服务在后台运行。


设置开机自启动


如果你希望 Nginx 在系统启动时自动启动,可以执行以下命令设置开机自启动:

systemctl enable nginx

这样,Nginx 将在系统启动时自动启动。


检查 Nginx 状态

systemctl status nginx

7.png

停止 Nginx 服务

systemctl stop nginx

重启 Nginx 服务

systemctl restart nginx

卸载 Nginx


如果需要卸载Nginx,您可以执行以下步骤:


停止 Nginx 服务:


执行以下命令停止 Nginx 服务:

systemctl stop nginx

如果你使用的是非系统服务方式启动Nginx,可以使用以下命令停止Nginx:

/usr/local/nginx/sbin/nginx -s stop

确定Nginx的安装位置:


执行以下命令查找Nginx的安装位置:

whereis nginx

该命令将返回Nginx可执行文件的路径,例如 /usr/local/nginx。


删除Nginx安装目录:


执行以下命令删除Nginx的安装目录:

rm -rf /usr/local/nginx

查找并删除相关文件:


执行以下命令查找可能与Nginx相关的文件:

find / -name nginx

这将搜索文件系统中所有包含 “nginx” 的文件名,并且你可以根据需要删除这些文件。


完成以上步骤后,Nginx将被完全卸载。


结语


Nginx是一个强大而多才多艺的Web服务器,它不仅提供卓越的性能,还具备灵活的配置选项。通过本文的指南,您已经成功地掌握了Nginx的基本安装和配置,并且了解了如何将其设置为系统服务。这将为您的Web应用程序提供稳定性和高性能,同时为您提供了丰富的自定义选项,以满足各种需求。希望这份指南对您在Nginx的世界中踏上成功的旅程提供了帮助。


相关文章
|
7月前
|
Ubuntu Linux Anolis
Linux系统禁用swap
本文介绍了在新版本Linux系统(如Ubuntu 20.04+、CentOS Stream、openEuler等)中禁用swap的两种方法。传统通过注释/etc/fstab中swap行的方式已失效,现需使用systemd管理swap.target服务或在/etc/fstab中添加noauto参数实现禁用。方法1通过屏蔽swap.target适用于新版系统,方法2通过修改fstab挂载选项更通用,兼容所有系统。
631 3
Linux系统禁用swap
|
7月前
|
Linux
Linux系统修改网卡名为eth0、eth1
在Linux系统中,可通过修改GRUB配置和创建Udev规则或使用systemd链接文件,将网卡名改为`eth0`、`eth1`等传统命名方式,适用于多种发行版并支持多网卡配置。
1163 3
|
Ubuntu Linux 网络安全
Linux系统初始化脚本
一款支持Rocky、CentOS、Ubuntu、Debian、openEuler等主流Linux发行版的系统初始化Shell脚本,涵盖网络配置、主机名设置、镜像源更换、安全加固等多项功能,适配单/双网卡环境,支持UEFI引导,提供多版本下载与持续更新。
727 3
Linux系统初始化脚本
|
7月前
|
安全 Linux Shell
Linux系统提权方式全面总结:从基础到高级攻防技术
本文全面总结Linux系统提权技术,涵盖权限体系、配置错误、漏洞利用、密码攻击等方法,帮助安全研究人员掌握攻防技术,提升系统防护能力。
856 1
|
Linux
linux中服务管理
在Linux服务管理中,从传统的System V init到Upstart,再到广泛采用的systemd,管理方式不断发展。systemd以其强大的功能和依赖解决成为现代Linux的核心。`systemctl`是管理服务的关键命令,如启动(`start`)、停止(`stop`)、重启(`restart`)服务及设置开机启动(`enable`)或取消(`disable`)。了解和服务管理,特别是systemd和`systemctl`的使用,对系统管理员至关重要。其他如xinetd用于控制网络服务,而特定环境下有OpenRC等工具。
287 2
|
安全 Ubuntu 网络协议
Linux中的服务管理
Linux系统可以同时运行数百个任务。其中大多数都属于操作系统环境的组成部分,不过可能也会有那么一两个你不需要的**守护进程**。有3种可用于启动守护进程和服务的工具,Linux发行版支持其中任意一种。传统的SysV系统使用/etc/init.d中的脚本。较新的systemd守护进程除了使用/etc/init.d之外,还用到了systemctl调用。还有些发行版使用的是upstart,配置脚本保存在/etc/init中。systemd如今已经取代了SysVinit系统。upstart是由Ubuntu开发并采用的,但是在14.04版中,已经改成了systemd。
382 3
|
Ubuntu 关系型数据库 MySQL
【Linux进阶篇】启动流程和服务管理
【Linux进阶篇】启动流程和服务管理
371 0
|
Linux 网络安全
Linux服务管理
1.service service命令,顾名思义,就是用于管理Linux操作系统中服务的命令。 这个命令不是在所有的linux发行版本中都有。主要是在redhat、fedora、mandriva和centos中。 查看所有服务当前的运行状态:
698 0
Linux服务管理
|
存储 关系型数据库 MySQL
Linux:1.进程介绍+2.Linux父子进程+3.终止进程kill和killall+4.查看进程树pstree+5.service服务管理
Linux:1.进程介绍+2.Linux父子进程+3.终止进程kill和killall+4.查看进程树pstree+5.service服务管理
368 0
Linux:1.进程介绍+2.Linux父子进程+3.终止进程kill和killall+4.查看进程树pstree+5.service服务管理
|
安全 Linux 网络安全
linux安全加固——服务管理
linux安全加固——服务管理
linux安全加固——服务管理