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

news/2024/7/24 6:13:42 标签: linux, nginx, 运维

目录

  • 前言
  • 安装 Nginx
    • 安装依赖项
    • 下载Nginx
    • 解压Nginx
    • 编译和安装
    • 防火墙设置
    • 启动Nginx
  • 配置 Nginx 为系统服务
    • 配置 Nginx 服务文件
    • 启动 Nginx 服务
    • 设置开机自启动
    • 检查 Nginx 状态
    • 停止 Nginx 服务
    • 重启 Nginx 服务
  • 卸载 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上找到最新版本的下载链接。

# 例如,下载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文件等。

防火墙设置

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

# 查看防火墙状态
systemctl status firewalld

# 关闭防火墙
systemctl stop firewalld

# 开机禁用防火墙
systemctl disable firewalld

启动Nginx

进入Nginx的安装目录:

cd /usr/local/nginx/sbin

然后,启动Nginx服务器:

./nginx

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

配置 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

在这里插入图片描述

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


http://www.niftyadmin.cn/n/5162667.html

相关文章

基于袋獾算法的无人机航迹规划-附代码

基于袋獾算法的无人机航迹规划 文章目录 基于袋獾算法的无人机航迹规划1.袋獾搜索算法2.无人机飞行环境建模3.无人机航迹规划建模4.实验结果4.1地图创建4.2 航迹规划 5.参考文献6.Matlab代码 摘要:本文主要介绍利用袋獾算法来优化无人机航迹规划。 1.袋獾搜索算法 …

转座子的鉴定

1.鉴定 将转座子鉴别和注释的方法分为3大类: ①从头算法; ②基于同源性的方法 ; ③联合算法。 其中,从头算法又包括基于基因组序列比对的方法、K—mer方法和基于结构特征的方法 ; 基于同源性的方法包括基于同源序…

Go 接口:nil接口为什么不等于nil?

本文主要内容:深入了解接口类型的运行时表示层。 文章目录 一、Go 接口的地位二、接口的静态特性与动态特性2.1 接口的静态特性与动态特性介绍2.2 “动静皆备”的特性的好处 三、nil error 值 ! nil四、接口类型变量的内部表示第一种:nil 接口变量第二种&#xff1a…

,多数据源+Mybatisplus + Sharding JDBC同一库中分表

水平分表是在同一个数据库内,把同一个表的数据按一定规则拆到多个表中,多数据源采用 mybatis-plus的dynamic-datasource 分库分表采用sharding-jdbc 数据库连接池管理是alibaba的druid-spring-boot-starter 同一个数据库内分表 目录 1.数据库表 2.配置 3.引入的…

竞赛 深度学习疲劳检测 驾驶行为检测 - python opencv cnn

文章目录 0 前言1 课题背景2 相关技术2.1 Dlib人脸识别库2.2 疲劳检测算法2.3 YOLOV5算法 3 效果展示3.1 眨眼3.2 打哈欠3.3 使用手机检测3.4 抽烟检测3.5 喝水检测 4 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 **基于深度学习加…

Django的简单介绍

一、Web应用 Web应用程序是什么? Web应用程序是一种可以通过Web访问的应用程序,最大的好处就是用户很容易访问应用程序,只需要有浏览器即可,不用安装其它软件 应用程序的两种模式: C/S:客户端/服务端程序&a…

企业计算机服务器中了360勒索病毒怎么办?勒索病毒解密,数据恢复

网络技术的不断发展给企业的生产与生活提供了极大的帮助,但随之而来的网络安全威胁也不断增加,近期,云天数据恢复中心的工程师接到了很多企业的求助,企业的计算机服务器数据库遭到了360后缀勒索病毒,通过对该病毒的检测…

React进阶之路(二)-- 组件通信、组件进阶

文章目录 组件通信组件通信的意义父传子实现props说明子传父实现兄弟组件通信跨组件通信Context通信案例 React组件进阶children属性props校验组件生命周期 组件通信 组件通信的意义 组件是独立且封闭的单元,默认情况下组件只能使用自己的数据(state&a…