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的世界中踏上成功的旅程提供了帮助。


相关文章
|
5月前
|
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挂载选项更通用,兼容所有系统。
486 3
Linux系统禁用swap
|
5月前
|
Linux
Linux系统修改网卡名为eth0、eth1
在Linux系统中,可通过修改GRUB配置和创建Udev规则或使用systemd链接文件,将网卡名改为`eth0`、`eth1`等传统命名方式,适用于多种发行版并支持多网卡配置。
990 3
|
4月前
|
Linux 网络安全 Docker
盘古栈云,创建带ssh服务的linux容器
创建带ssh服务的linux容器
366 146
|
4月前
|
安全 Linux iOS开发
Nessus Professional 10.10 Auto Installer for RHEL 10, AlmaLinux 10, Rocky Linux 10 - Nessus 自动化安装程序
Nessus Professional 10.10 Auto Installer for RHEL 10, AlmaLinux 10, Rocky Linux 10 - Nessus 自动化安装程序
323 6
Nessus Professional 10.10 Auto Installer for RHEL 10, AlmaLinux 10, Rocky Linux 10 - Nessus 自动化安装程序
|
5月前
|
缓存 安全 Linux
六、Linux核心服务与包管理
在没有网络的情况下,使用系统安装光盘是获取RPM包的常用方法。场景二:配置本地文件镜像源 (使用系统安装光盘/ISO)(检查RPM包的GPG签名以保证安全) 或。YUM/DNF包管理工具 (yum/dnf)(此处可以放置您为本主题制作的思维导图)处理依赖问题的危险选项 (应极力避免)(覆盖文件、替换已安装包)。(list) 则是列出文件。(query file) 是。(假设系统安装光盘已挂载到。信息 (verbose)。(upgrade) 选项。(all) 已安装的包。(package) 选项
466 11
|
Ubuntu Linux 网络安全
Linux系统初始化脚本
一款支持Rocky、CentOS、Ubuntu、Debian、openEuler等主流Linux发行版的系统初始化Shell脚本,涵盖网络配置、主机名设置、镜像源更换、安全加固等多项功能,适配单/双网卡环境,支持UEFI引导,提供多版本下载与持续更新。
579 0
Linux系统初始化脚本
|
4月前
|
消息中间件 Kafka Linux
Linux下安装Kafka 3.9.1
本文介绍Kafka 3.9.1版本的安装与配置,包括通过ZooKeeper或KRaft模式启动Kafka。涵盖环境变量设置、日志路径修改、集群UUID生成、存储格式化及服务启停操作,适用于Linux环境下的部署实践。
547 0
|
5月前
|
Linux 应用服务中间件 Shell
二、Linux文本处理与文件操作核心命令
熟悉了Linux的基本“行走”后,就该拿起真正的“工具”干活了。用grep这个“放大镜”在文件里搜索内容,用find这个“探测器”在系统中寻找文件,再用tar把东西打包带走。最关键的是要学会使用管道符|,它像一条流水线,能把这些命令串联起来,让简单工具组合出强大的功能,比如 ps -ef | grep 'nginx' 就能快速找出nginx进程。
629 1
二、Linux文本处理与文件操作核心命令
|
5月前
|
Linux
linux命令—stat
`stat` 是 Linux 系统中用于查看文件或文件系统详细状态信息的命令。相比 `ls -l`,它提供更全面的信息,包括文件大小、权限、所有者、时间戳(最后访问、修改、状态变更时间)、inode 号、设备信息等。其常用选项包括 `-f` 查看文件系统状态、`-t` 以简洁格式输出、`-L` 跟踪符号链接,以及 `-c` 或 `--format` 自定义输出格式。通过这些选项,用户可以灵活获取所需信息,适用于系统调试、权限检查、磁盘管理等场景。
404 137