Linux系统部署Nginx详细教程(图文讲解)

前言:本篇博客记录了我是如何使用Linux系统一步一步部署Nginx的完整过程,也是我学习之路上的一个笔记总结,每一行代码都进行了严格的测试,特此做一个技术分享!

目录

一、安装依赖

二、安装Nginx

三、配置Nginx

四、放行端口号

五、运行Nginx

六、项目Gitee源码

七、总结


一、安装依赖

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

这个命令主要包含以下内容:

1、gccgcc-c++-GNUCC++编译器:用于编译依赖这两种语言的源码程序。

2、automake:一个生成Makefile文件的工具,用于通过Makefile来编译源码。

3、pcrepcre-devel-Perl:兼容的正则表达式库,许多程序会依赖这个库进行正则匹配。

4、zlibzlib-devel:提供数据压缩功能的zlib库及其开发文件。

5、openssl-devel:OpenSSL库的开发文件,可以提供加密/SSL/TLS等功能。

都是一些编译源码时常见的依赖,如果没有这些包,在编译依赖它们的源码时就会失败。所以通常如果要在CentOS/RHEL从源码编译安装软件,都需要事先安装这些编译工具链和库文件,以确保编译时依赖能被满足。

二、安装Nginx

1、我在根目录下新建一个nginx文件夹,用于存放下载的压缩包

mkdir nginx

2、进入该目录

cd nginx

这是我的目录的绝对路径 

3、直接从Nginx官网拉取压缩包

wget http://nginx.org/download/nginx-1.16.1.tar.gz

4、下载完毕以后,解压

tar -zxvf nginx-1.16.1.tar.gz

5、进入我们解压好的目录

cd nginx-1.16.1

6、因为我默认是http协议,所以直接执行如下命令进行编译即可

./configure

7、安装

make && make install

这样就安装完成啦!

三、配置Nginx

1、查看根目录

whereis nginx

2、进入Nginx目录下的conf文件夹

cd /usr/local/nginx/conf

3、使用vim编辑器编辑nginx.conf文件

vim nginx.conf

4、按键盘i键进入编辑模式

5、将80端口号改为88端口号(因为我的被占用了),其次把root路径改为vue项目打包文件的绝对路径,其他不用动

这边我自己写了个简单的vue项目,已经打成dist文件夹上传到了Linux服务器上面,绝对路径是/project/vue/dist

6、按Esc键退出编辑模式,输入:wq保存并退出vim编辑器

这样基础的配置就完成啦!

四、放行端口号

因为我们上面给Nginx服务器指定了新的端口号,所以我在华为云的安全组需要放行88端口号,不然无法进行访问

五、运行Nginx

1、进入Nginx的根目录中的sbin目录

cd /usr/local/nginx/sbin

这个文件就是用来启动/停止Nginx的

2、按默认配置启动

./nginx

3、输入http://ip地址:88/即可访问

这样就算部署成功啦! 

4、停止Nginx

./nginx -s stop

六、项目Gitee源码

这边我把上面测试部署的Vue项目源码分享在了我的Gitee上,有兴趣的可以看一下!

源码地址:Docker部署Vue项目: 使用Docker部署一个简单的Vue项目源代码分享

七、总结

以上就是我目前对于如何在Linux系统上部署Nginx服务器的讲解,如有问题,欢迎评论区讨论!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/40570.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Spring学习笔记---SpringBoot快速入门

Spring学习笔记---SpringBoot快速入门 Spring学习笔记---SpringBoot1 SpringBoot简介1.1 SpringBoot快速入门1.1.1 开发步骤1.1.1.1 创建新模块1.1.1.2 创建 Controller1.1.1.3 启动服务器1.1.1.4 进行测试 1.1.2 对比1.1.3 官网构建工程1.1.3.1 进入SpringBoot官网1.1.3.2 选择…

PETRv2: A Unified Framework for 3D Perception from Multi-Camera Images

PETRv2: A Unified Framework for 3D Perception from Multi-Camera Images 作者单位 旷视 目的 本文的目标是 通过扩展 PETR,使其有时序建模和多任务学习的能力 以此建立一个 强有力且统一的框架。 本文主要贡献: 将 位置 embedding 转换到 时序表…

Spring Batch之读数据—读XML文件(三十二)

一、XML格式文件解析 XML是一种通用的数据交换格式,它的平台无关性、语言无关性、系统无关性,给数据集成与交换带来了极大的方便。XML在Java领域的解析方式有两种,一种叫SAX,另一种叫DOM。SAX是基于事件流的解析,DOM是…

基于STM32单片机的智能家居烟雾温度火灾防盗报警的设计与实现

功能介绍 以STM32单片机作为主控系统;LCD1602液晶显示屏来显示显示测得的值;SR501人体红外感应是否有人进行防盗;通过烟雾传感器MQ-2获取前的烟雾值;通过DHT11温湿度传感器来获取当前的温湿度;所有的信息通过通过esp82…

如何用DeepDiff测接口数据源变更?

开发同学最近变更了部分业务查询接口底层的数据源,希望测试同学能够针对这些接口进行一些回归验证,校验底层数据源更新前后业务查询接口返回的一致性,保证更新后对正常业务没有影响。 这个回归测试和一般接口测试有所区别,不仅仅…

金融中的数学:概率分布(下)

上篇博客介绍了离散型概率分布,本篇博客介绍连续型概率分布。 1.连续型概率分布 连续型均匀分布(Continuous Uniform distribution)是一种描述在特定区间内取值均匀分布的概率分布。在该分布中,随机变量在给定区间内的取值概率密…

Vue实现阻止浏览器记住密码功能的三种方法

通常浏览器会主动识别密码表单,在你登录成功之后提示保存密码 , 密码保存到浏览器的 密码管理器中 ( 如下是谷歌浏览器 ) 这种行为是浏览器的行为 ,这种操作也是为了方便用户的使用 现在的一个需求是要阻止这个保存密码的弹窗提示 登录页账…

使用IDEA工具debug java annotation processors

最近看Spring提供的自动生成spring-configuration-metadata.json文件的组件。组件依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId><optional>true</opti…

Revit中如何添加剖面?快速实现剖面图

一、Revit中如何添加剖面&#xff1f; 除了标高绘制所得到的楼层平面视图和立面视图之外&#xff0c;还可以添加剖面视图&#xff0c;这样可以得到任意位置一个竖向的剖切面&#xff0c;例如在楼梯细节处理中&#xff0c;楼梯处于建筑物内部&#xff0c;立面也看不到整个楼梯的…

Excel-公式VLOOKUP 使用方法-小记

个人愚见 表示 MongoDB列中的任意一条数据 在 MySQL列 精确查找 和MongoDB列 中一模一样的数据&#xff0c;有的话返回MongoDB列数据&#xff0c;没有话返回#N/A 官方解释

MySQL数据库与表的基本操作 + 表的基本CRUD(增删改查)操作

文章目录 前言一、库的基本操作显示当前所有数据库创建数据库使用数据库删除数据库 二、表的基本操作创建表查看库中所有表查看表结构删除表 三、表的增删改查(基础)新增数据(Create)全列插入指定列插入 查询数据(Retrieve)全列查询指定列查询查询字段为表达式指定列的别名去重…

掘金量化—Python SDK文档—5.API 介绍(1)

​ Python SDK文档 5.API 介绍 5.1基本函数 init - 初始化策略 初始化策略, 策略启动时自动执行。可以在这里初始化策略配置参数。 函数原型&#xff1a; init(context)参数&#xff1a; 参数名类型说明contextcontext上下文&#xff0c;全局变量可存储在这里 示例&…

vue(html,css,vue2,vue3) 学习总结

文章目录 小白 Vue 3 学习一些名词软件安装 VSCode 中的一些设置1. 关闭eslint检查tsconfig.json 配置文件2. ts 文件引用报红 相对路径写法常见图片格式和区别目录结构JS/TS1. prototype(原型对象)2. 导入/导出3. 去除字符串两端空格4. 一些特殊语法糖5. 深拷贝6. 拼接两个数组…

【java爬虫】使用selenium获取某宝联盟淘口令

上一篇文章我们已经介绍过使用selenium获取优惠券基本信息的方法 (15条消息) 【java爬虫】使用selenium爬取优惠券_haohulala的博客-CSDN博客 本文将在上一篇文章的基础上更进一步&#xff0c;获取每个优惠券的淘口令&#xff0c;毕竟我们只有复制淘口令才能在APP里面获取优惠…

基于ChatGPT和私有知识库搭建Quivr项目

准备工作 安装docker和docker-compose申请supabase账号 拉取Quivr代码 git clone https://github.com/StanGirard/Quivr.git 复制.XXXXX_env文件 cp .backend_env.example backend/.env cp .frontend_env.example frontend/.env 更新backend/.env和frontend/.env文件 ba…

【hadoop】部署hadoop全分布模式

hadoop全分布模式 全分布模式特点部署全分布模式准备工作正式配置hadoop-env.shhdfs-site.xmlcore-site.xmlmapred-site.xmlyarn-site.xmlslaves对NameNode进行格式化复制到另外两台虚拟机启动 对部署是否成功进行测试 全分布模式特点 真正的分布式环境&#xff0c;用于生产具…

java学习003

Java数组 Java 语言中提供的数组是用来存储固定大小的同类型元素&#xff0c;这一点和PHP语言的可变数组长度不同。 声明变量数组 首先必须声明数组变量&#xff0c;才能在程序中使用数组。下面是声明数组变量的语法&#xff1a; dataType[] arrayRefVar; // 首选的方法 或 …

2023-07-18力扣今日二题-太难了吧

链接&#xff1a; LCP 75. 传送卷轴 题意&#xff1a; 给一个正方形迷宫&#xff0c;主角是A&#xff0c;每次可以上下左右走一格子&#xff0c;有四种类型的格子&#xff1a;墙、初始位置、魔法水晶、空地 另一个人B&#xff0c;可以传送一次A&#xff0c;只能在空地传送&…

017 - STM32学习笔记 - SPI读写FLASH(二)-flash数据写入与读取

016 - STM32学习笔记 - SPI访问Flash&#xff08;二&#xff09; 上节内容学习了通过SPI读取FLASH的JEDEC_ID&#xff0c;在flash资料的指令表中&#xff0c;还看到有很多指令可以使用&#xff0c;这节继续学习使用其他指令&#xff0c;程序模板采用上节的模板。 为了方便起…

基于深度学习的高精度线路板瑕疵目标检测系统(PyTorch+Pyside6+YOLOv5模型)

摘要&#xff1a;基于深度学习的高精度线路板瑕疵目标检测系统可用于日常生活中来检测与定位线路板瑕疵目标&#xff0c;利用深度学习算法可实现图片、视频、摄像头等方式的线路板瑕疵目标检测识别&#xff0c;另外支持结果可视化与图片或视频检测结果的导出。本系统采用YOLOv5…