当前位置: 首页 > news >正文

CentOS7操作系统安装nginx实战(多种方法,超详细)

文章目录

  • 前言
  • 一. 实验环境
  • 二. 使用yum安装nginx
    • 2.1 添加yum源
      • 2.1.1 使用官网提供的源地址(方法一)
      • 2.1.2 使用epel的方式进行安装(方法二)
    • 2.2 开始安装nginx
    • 2.3 启动并进行测试
    • 2.4 其他的一些用法:
  • 三. 编译方式安装nginx
    • 3.1 下载所需要的包
    • 3.2 创建目录并解压nginx包
    • 3.3 安装编译需要的包
    • 3.4 安装并测试
    • 3.5 简化默认的启动方式
  • 四. 拓展内容
    • 4.1 编译安装完nginx的配置文件位置
    • 4.2 配置访问状态统计
  • 总结

前言

大家好,又见面了,我是沐风晓月,本文是专栏【运维系列-架构与服务】专栏中的[linux基本功-系统服务实战篇],主要讲解nginx的编译安装和yum安装的方式

此专栏是沐风晓月对Linux常见的服务和架构进行总结,希望能够加深自己的印象,以及帮助到其他的小伙伴😉😉。

如果文章有什么需要改进的地方还请大佬不吝赐教👏👏。

🏠个人主页:我是沐风晓月
🧑个人简介:大家好,我是沐风晓月,双一流院校计算机专业,阿里云社区专家博主😉😉
💕 座右铭: 先努力成长自己,再帮助更多的人 ,一起加油进步🍺🍺🍺
💕欢迎大家:这里是CSDN,我总结知识的地方,喜欢的话请三连,有问题请私信😘

一. 实验环境

本次的实验环境见下表:

操作系统服务器IPhostname
centos7.6192.168.1.41mufengrow41

如何查看相应的参数:

  • 查看操作系统:
[root@mufenggrow ~]# cat /etc/redhat-release 
CentOS Linux release 7.6.1810 (Core) 
  • 查看ip
[root@mufenggrow41 ~]# ifconfig |grep inet |awk 'NR==1{print $2}'
192.168.1.56

二. 使用yum安装nginx

2.1 添加yum源

nginx不在的默认的yum源中, 可以使用epel或者官网提供的yum源来安装。

以下两种方法,选择任意一种即可,也就是2.1.1和2.1.2两个小节的内容,任选其一:

2.1.1 使用官网提供的源地址(方法一)

  1. 找到官网的源

官网提供的源地址:http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

在这里插入图片描述

  1. 使用rpm -ivh 进行安装
[root@mufeng ~]# rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
获取http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
警告:/var/tmp/rpm-tmp.DRyoO4: 头V4 RSA/SHA1 Signature, 密钥 ID 7bd9bf62: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...1:nginx-release-centos-7-0.el7.ngx ################################# [100%]
  1. 安装完成之后查看源:
    在这里插入图片描述

2.1.2 使用epel的方式进行安装(方法二)

  1. 先安装epel
[root@mufeng ~]# sudo yum install yum-utils
  1. 安装完成后,查看安装的epel包即可
yum install epel

2.2 开始安装nginx

上面的两个方法不管选择哪个,都可以使用yum进行安装:

[root@mufeng ~]# yum install nginx

2.3 启动并进行测试

# 查看nginx版本
[root@mufeng ~]# nginx -v
nginx version: nginx/1.22.1
# 设置开机自启动
[root@mufeng ~]# systemctl enable nginx
Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.# 启动nginx
[root@mufeng ~]# systemctl start nginx
[root@mufeng ~]# 

测试 :
直接访问IP即可:
在这里插入图片描述

2.4 其他的一些用法:

  • 停止服务:
 systemctl restart nginx
  • 重新加载nginx
systemctl reload nginx
  • 打开防火墙的80端口:
[root@mufeng ~]# firewall-cmd --zone=public --permanent --add-service=http 
success
[root@mufeng ~]# firewall-cmd --reload
success
[root@mufeng ~]# 

命令的作用是将 http 服务添加到 public 区域的永久规则中,即允许通过防火墙访问 http 服务。

其中,
–zone=public 指定了作用的区域为 public
–permanent 表示该规则将被永久保存
–add-service=http 指定添加的服务为 http

三. 编译方式安装nginx

3.1 下载所需要的包

nginx 包下载地址: http://nginx.org/en/download.html

[root@mufeng ~]# wget http://nginx.org/download/nginx-1.22.1.tar.gz

在这里插入图片描述

3.2 创建目录并解压nginx包

root@mufeng ~]# ls
anaconda-ks.cfg  initial-setup-ks.cfg  nginx-1.22.1.tar.gz  公共  模板  视频  图片  文档  下载  音乐  桌面
[root@mufeng ~]# mkdir tools
[root@mufeng ~]# mv nginx-1.22.1.tar.gz tools/
[root@mufeng ~]# cd tools/
[root@mufeng tools]# tar xf nginx-1.22.1.tar.gz 
[root@mufeng tools]# ls
nginx-1.22.1  nginx-1.22.1.tar.gz
[root@mufeng tools]# cd nginx-1.22.1/
[root@mufeng nginx-1.22.1]# ls
auto  CHANGES  CHANGES.ru  conf  configure  contrib  html  LICENSE  man  README  src
[root@mufeng nginx-1.22.1]# 

3.3 安装编译需要的包

一般编译都需要gcc,如果没有会报错

root@mufeng nginx-1.22.1]# make && make install
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module --with-pcre

这里指定了 nginx 的安装路径为 /usr/local/nginx,同时启用了 SSL 和状态监控模块。

在编译 Nginx 时,可以使用 ./configure --help 命令来查看可以使用的编译选项

3.4 安装并测试

使用make和make install进行安装

[root@mufeng nginx-1.22.1]# make && make install

开始测试:浏览器输入IP:

在这里插入图片描述

3.5 简化默认的启动方式

默认的操作方式,比如查看配置文件是否正确:

[root@mufeng nginx-1.22.1]# /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

我们使用软链接或者alias的形式来简化,这里我们使用软链接:

[root@mufeng nginx-1.22.1]# ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx[root@mufeng nginx-1.22.1]# nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@mufeng nginx-1.22.1]# 

启动方式:

[root@mufeng nginx-1.22.1]# nginx

重新加载方式:

[root@mufeng nginx-1.22.1]# nginx -s reload

关闭的话只能通过杀死进程了:

在这里插入图片描述

四. 拓展内容

4.1 编译安装完nginx的配置文件位置

  • conf: /usr/local/nginx , 存放 nginx 的配置文件,nginx.conf 是 nginx 服务最核心最主要的配置文件。

  • html:/usr/local/nginx,保存 ningx 服务器的 web 文件。也可以更改为其他目录保存 web 文件。

  • logs: /var/logs/nginx,保存 ningx 服务器的访问日志、错误日志等日志。

  • sbin: /usr/local/nginx,保存 nginx 二进制启动脚本。可以接受不同参数以实现不同的功能。

在这里插入图片描述

如果启动或者重启的过程中报错,可以查看logs中的日志。

4.2 配置访问状态统计

我们在编译的时候添加了 –with-http_stub_status_module这个模块,你可以使用nginx -V查看是否包含这个模块。
在这里插入图片描述

然后修改配置文件:

[root@mufeng nginx]# vim /usr/local/nginx/conf/nginx.conf

在这里插入图片描述
代码如下:

 location / {root   html;index  index.html index.htm;}
location /status {stub_status on;access_log off;}

查看配置文件是否正确

[root@mufeng nginx]# nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

重启:

nginx -s reload

测试:

在这里插入图片描述

可以看到: 当前的活动连接数为3个
554 表示: 已处理的连接数为5, 成功的TCP握手次数为5, 已处理的请求数为1

总结

以上就是使用centos7操作系统安装nginx实战,欢迎点赞收藏哦。

💕💕💕 好啦,这就是今天要分享给大家的全部内容了,我们下期再见!✨ ✨ ✨
🍻🍻🍻如果你喜欢的话,就不要吝惜你的一键三连了~

相关文章:

CentOS7操作系统安装nginx实战(多种方法,超详细)

文章目录前言一. 实验环境二. 使用yum安装nginx2.1 添加yum源2.1.1 使用官网提供的源地址(方法一)2.1.2 使用epel的方式进行安装(方法二)2.2 开始安装nginx2.3 启动并进行测试2.4 其他的一些用法:三. 编译方式安装ngin…...

【测绘程序设计】——空间直角坐标转换

测绘工程中经常遇到空间直角坐标转换——比如,北京54(或西安80)空间直角坐标转换成CGCS2000(或WGS-84)空间直角坐标,常用转换模型包括:①布尔沙模型(国家级及省级范围);②莫洛坚斯基模型(省级以下范围);③三维四参数(小于22局部区域) 等。   本文分享了基于布…...

数组--java--动态数组--有序数组--底层

java数组基础--java中的数组创建数组空间占用初始化数组访问元素插入查找删除元素动态数组扩容插入和添加重写toString删除二维数组二维数组注意点有序数组实现测试写在开头: 这篇文章包括数组的基础、一点底层的内容和一些稍微深入的东西。 作为第一个深入学习的数…...

Linux下使用C语言实现简单的聊天室程序

本文章介绍一种基于Linux使用C语言实现简单的局域网聊天室程序的方法,支持消息群发,历史数据查询,好友列表查看,好友上线下线提醒等功能。聊天界面如下图所示:下面将按步骤介绍该系统的设计实现,首先在linu…...

【数学】任意一个正整数n最多只有一个质因数大于根号n,怎么证明?

定理 任意一个正整数n最多只有一个大于n\sqrt{n}n​的质因子,并且该大于n\sqrt{n}n​质因子的幂次是1。 证明(反证法) 证明:最多只有一个大于n\sqrt{n}n​的质因子 假设n存在两个大于n\sqrt{n}n​的质因子,分别为p…...

【ES6】var let const 之面试题系列

关于 var、let、const 是前端开发人员经常用到的关键字,也是经典的面试题,接下来就站在面试题的角度来看待它们之间的区别。 一、区别 1. var 声明的范围是函数作用域,let 和 const 声明的范围是块作用域,块作用域是函数作用域的…...

Vue基础入门讲义(四)-组件化

文章目录1.引言2.定义全局组件3.组件的复用4.局部注册5.组件通信5.1.父向子传递props5.2.传递复杂数据5.3.子向父的通信1.引言 在大型应用开发的时候,页面可以划分成很多部分。往往不同的页面,也会有相同的部分。例如可能会有相同的头部导航。 但是如果…...

Android onLayout布局流程解析

组件布局流程结论 1.)layout流程始于ViewRootImpl的performLayout()方法,该方法会调用根View(DecorView)的layout()方法进行布局,因为DecorView是ViewGroup(FrameLayout),所以layout流程来到了ViewGroup(其…...

浅分析BIG-建筑展示系统

一、主页(主要界面)重点疑点(需要解决)1.云平台实时同步。是否可以电脑与hololens2同步或链接?并可以传输信息提醒?一级界面(启动界面)1.交互式启动激活效果(触发按钮旋转…...

模电基础(1) 半导体基础知识

基本内容: 1.本征半导体的基本介绍结构; 2.杂质半导体; 3.PN结的形成; 4.PN结的性质。 1.本征半导体 半导体:导电性能介于绝缘体和导体之间的物质。 本征半导体是纯净的晶体结构的半导体。 纯净→无杂质晶体结构→稳…...

阅读笔记:TF - IDF 原理

今天查阅 TF-IDF 资料,发现百度百科里面提供了一个例子,解释的很清楚,记下来备用。 原文链接:https://baike.baidu.com/item/tf-idf/8816134?fraladdin 例子:在某个一共有一千词的网页中 “原子能”、“的” 和 “应…...

【C语言】float 关键字

🚩write in front🚩 🔎大家好,我是謓泽,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流🔎 🏅2021|2022年度博客之星物联网与嵌入式开发TOP5|TOP4…...

Linux 网络编程(实现多路IO转接服务器)

1.select函数实现多路IO转接服务器select函数原型&#xff1a;包含在头文件<sys/time.h>&#xff0c;<sys/types.h>和<unistd.h>int select(int nfds, fd_set *readfds, fd_set *writefds,fd_set *exceptfds, struct timeval *timeout);作用&#xff1a;确定…...

DC-4 靶场学习

信息搜集&#xff1a; 首先获取靶场ip&#xff0c;和之前一样。 arp-scan -l nmap -sP 192.168.28.0/24然后访问。 发现需要登录。 漏洞分析: 直接用bp爆破&#xff0c;爆破出来密码为happy&#xff0c;登录。 发现执行了命令&#xff0c;抓包。 修改命令可以执行&#xff…...

QML组件

一个QML文件定义了一个独立的、顶级的QML组件。 一个QML组件就是一个模板&#xff0c;被QML运行环境解释来创建一个带有一些预定义行为的对象。 一个独立的QML组件可以运行多次来禅城多个对象&#xff0c;每个对象都可以称为该组件的实例。 例子&#xff1a; 在项目中添加一…...

canvas 学习指南

canvas 学习指南 创建一个 canvas <! DOCTYPE html><html xmlns"http://www.w3.org/1999/xhtml"><head><title></title><meta charset"utf-8" /><script type"text/javascript">window.onload fun…...

【华为OD机试2023】开心消消乐 C++

【华为OD机试2023】开心消消乐 C++ 前言 如果您在准备华为的面试,期间有想了解的可以私信我,我会尽可能帮您解答,也可以给您一些建议! 本文解法非最优解(即非性能最优),不能保证通过率。 Tips1:机试为ACM 模式 你的代码需要处理输入输出,input/cin接收输入、print/cou…...

学历?能力?

一个面试官愿意看一张有形的总结报告&#xff0c;还是愿意相信看不到的人品&#xff1f;...

使用ECharts打造一个数据可视化面板

使用ECharts打造一个数据可视化面板1. 使用技术2. 案例适配方案3. 基础设置4. header 布局5. mainbox 主体模块6. 公共面板模块 panel7. 柱形图 bar 模块&#xff08;布局&#xff09;8. 中间布局9. ECharts 介绍10. ECharts 体验11. ECharts 基础配置12. 柱状图图表&#xff0…...

【论文简述】PVSNet: Pixelwise Visibility-Aware Multi-ViewStereo Network(arxiv 2020)

一、论文简述 1. 第一作者&#xff1a;Qingshan Xu 2. 发表年份&#xff1a;2020 3. 发表期刊&#xff1a;arxiv 4. 关键词&#xff1a;MVS、3D重建、可见性、代价体、训练策略 5. 探索动机&#xff1a;ETH3D基准测试提供的图像包含强烈的视图变化&#xff0c;这就要求MVS…...

CSS隐藏元素的几种方式以及display、visibility、opacity的区别

CSS隐藏元素的方式首先最通用且最易想到的方法肯定是display、visibility和opacity这三种了display:none设置元素不可见并且连盒模型也不生成&#xff0c;一般用于不占空间的隐藏元素。display属性规定元素应该生成的框的类型&#xff0c;当其值为“none”时可以规定元素不生成…...

【Java|golang】1487. 保证文件名唯一---golang中string方法的坑

给你一个长度为 n 的字符串数组 names 。你将会在文件系统中创建 n 个文件夹&#xff1a;在第 i 分钟&#xff0c;新建名为 names[i] 的文件夹。 由于两个文件 不能 共享相同的文件名&#xff0c;因此如果新建文件夹使用的文件名已经被占用&#xff0c;系统会以 (k) 的形式为新…...

flstudio21水果language选项中文设置方法教程

编曲是通过DAW&#xff08;数字音频工作站软件&#xff09;完成的&#xff0c;也就是我们常说的宿主软件。现在有很多优秀的宿主软件&#xff0c;例如Cubase、Studio One、FL Studio等。 FL Studio是一款功能强大的音乐制作软件&#xff0c;也被称为FruityLoops。目前已经推出…...

Ubuntu中安装StaMPS

Ubuntu中安装StaMPS0 StaMPS简介1 首先安装好MATLAB&#xff0c;安装一些依赖工具包2 安装StaMPS2.1 下载StaMPS安装包2.2 安装2.3 配置环境2.4 matlab中的路径设置0 StaMPS简介 官网&#xff1a;https://homepages.see.leeds.ac.uk/~earahoo/stamps/ A software package to e…...

Spring Security 实现自定义登录和认证(1)

1 SpringSecurity 1.1 导入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-security</artifactId> </dependency>1.2 编写配置类 在spring最新版中禁用了WebSecurityConfigurerAdapter…...

Linux 进程:辨析wait与waitpid

目录一、wait二、waitpid(1)参数&#xff1a;pid(2)参数&#xff1a;status(3)参数&#xff1a;options(4)返回值wait 与 waitpid 这两个函数的作用是&#xff1a;等待子进程退出&#xff0c;在子进程退出后释放子进程资源&#xff0c;防止子进程变成僵尸进程。但准确的说&…...

移除元素(每日一题)

目录 一、题目描述 二、题目分析 2.1 方法一 2.1.1 思路 2.1.2 代码 2.2 方法二 2.2.1 思路 2.2.2 代码 一、题目描述 题目链接&#xff1a;27. 移除元素 - 力扣&#xff08;LeetCode&#xff09; 给你一个数组 nums 和一个值 val&#xff0c;你需要 原地 移除所有数…...

打印名片-课后程序(Python程序开发案例教程-黑马程序员编著-第一章-课后作业)

实例2&#xff1a;打印名片 名片是标示姓名及其所属组织、公司单位和联系方法的纸片&#xff0c;也是新朋友互相认识、自我介绍的快速有效的方法。本实例要求编写程序&#xff0c;模拟输出效果如图1所示的名片。 图1 名片样式 实例目标 掌握print()函数的用法 实例分析 名片…...

为啥预编译SQL能够防止SQL注入

前言之前我一个搞网络安全的朋友问了我一个的问题&#xff0c;为啥用 PreparedStatement 预编译的 SQL 就不会有被 SQL 注入的风险&#xff1f;第一时间我联想到的是八股文中关于 Mybatis 的脚本 ${} 和 #{} 的问题&#xff0c;不过再想想&#xff0c;为啥 ${} 会有 SQL 注入的…...

IGKBoard(imx6ull)-SPI接口编程-回环测试

文章目录1- 使能imx6ull开发板SPI驱动2- 回环测试imx6ull开发板物理连接3- 编程SPI回环测试4- 代码重难点分析&#xff08;1&#xff09;spi_device结构体&#xff08;2&#xff09;spi_ioc_transfer结构体&#xff08;3&#xff09;ioctl函数对于SIP不了解的可以参考这篇文章&…...