三、Nginx 安装集

news2024/7/6 19:04:51

一、Nginx CentOS Yum 安装


1. 前置准备

# 默认情况 CentOS-7 中没有 Nginx 的源
# Nginx 官方提供了源,所以执行如下命令添加源
rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

2. 安装

# 安装
yum install -y nginx
# 默认安装目录 /etc/nginx

# 查看版本
nginx -v

# 查找 Nginx 可执行文件的位置
whereis nginx

二、Nginx CentOS 源码安装


1. 前置准备

  • Linux 内核 2.6 及以上版本,只有 2.6 之后才支持 epool。
  • 在此之前使用 select 或 pool 多路复用的 IO 模型,无法解决高并发压力的问题。
  • 通过命令 uname -a 即可查看 Linux 内核

# 查看 Linux 内核
uname -a

在这里插入图片描述


1. GCC 编译器

  1. GCC(GNU Compiler Collection)可用来 编译 C语言 程序
  2. Nginx 不会直接提供 二进制可执行程序,只能下载源码进行编译

2. PCRE 库

  1. PCRE(Perl Compatible Regular Expressions,Perl 兼容正则表达式)是由 Philip Hazel 开发的函数库
  2. 目前为很多软件所使用,该库 支持正则表达式

2. zlib 库

  1. zlib 库用于对 HTTP 包的内容做 gzip 格式的压缩
  2. 如果在 nginx.conf 里配置了 gzip on,并指定对于某些类型(content-type)的 HTTP 响应使用 gzip 来进行压缩以减少网络传输量

3. OpenSSL 开发库

  1. 如果服务器不但要支持 HTTP,还需要在更安全的 SSL 协议上传输 HTTP,那么就需要 OpenSSL 了
  2. 如果想使用 MD5、SHA1 等散列函数,那么也需要安装它

# 通过 yum 安装 Nginx 前置准备 gcc、pcre、zlib、openssl
yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel pcre pcre-devel

2. 下载安装

  • 下载 Nginx
# 1. 下载 Nginx 最新稳定版本
wget http://nginx.org/download/nginx-1.16.1.tar.gz

# 2. 解压
tar -zxvf nginx-1.16.1.tar.gz
#unzip pcre-8.44.zip

cd nginx-1.16.1
# 3. 安装
# 3.1. 安装一(全部采用默认安装)
./configure & make & make install  
make & make install 
# 执行完成之后 Nginx 运行文件,就会被安装在 /usr/local/nginx 下


# 3.2. 安装二(自定义配置安装)
./configure --prefix=/usr/local/app/nginx/nginx-1.16.1 --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/app/nginx/pcre-8.35
make
make install

# 4. 基于参数构建
./configure  

# 5. 检查
./sbin/nginx -v
#/usr/local/app/nginx/nginx-1.16.1/sbin/nginx -v

3. 模块更新

# 1. 添加状态查看模块
./configure --with-http_stub_status_module 

# 2. 重新创建主文件
make

# 3. 将新生成的 Nginx 文件覆盖旧文件
cp objs/nginx /usr/local/nginx/sbin/

# 4. 查看是否更新成功,显示了 configure 构建参数表示成功
/usr/local/nginx/sbin/nginx -v

三、Nginx—Docker


1. 创建容器

# 1. 拉取最新 Nginx 镜像
docker pull nginx

# 2. 运行 Nginx 容器
docker run -id --name=nginx_1 -p 80:80 -v /root/nginx:/etc/nginx <镜像Id>

# 3. 重启 Nginx 容器
docker restart <容器Id>

# 4. 关闭 Nginx 容器
docker stop <容器Id>

2. 配置

  • Nginx 默认的日志目录:/var/log/nginx
# 拷出来
docker cp <容器Id>:/etc/nginx/nginx.conf /root/nginx/nginx.conf

# 拷进去
docker cp /root/nginx/nginx.conf <容器Id>:/etc/nginx/nginx.conf   

# 重启 Nginx
docker restart <容器Id>                                     

四、Nginx—Ubuntu


五、Nginx—配置

  • 详解Linux下安装配置Nginx
  • Nginx 安装配置
  • 配置nginx.service

九、Nginx 命令

# 启动
systemctl start nginx.service
# 停止
systemctl stop nginx.service
# 重启
systemctl restart nginx.service
# 开机自启动
systemctl enable nginx.service

-?,-h           : 打开 帮助信息
-v              : 显示 版本信息,然后退出
-V              : 显示 版本和配置选项信息,然后退出
-t              : 检测 配置文件 是否有语法错误,然后退出
-q              : 在检测 配置文件 期间,屏蔽非错误信息
-s <signal>     : 给一个 nginx 主进程发送信号:stop(停止)、quit(退出)、 reopen(重启)、reload(重新加载配置文件)
-p <prefix>     : 设置前缀路径(默认是:/usr/local/Cellar/nginx/1.2.6/)
-c <filename>	: 设置配置文件(默认是:/usr/local/etc/nginx/nginx.conf)
-g directives	: 设置配置文件外的 全局指令

1. 检查

cd /usr/local/nginx/sbin

# 查看帮助命令
nginx -?

# 1. 查看 配置文件 位置
# 2. 检查 配置信息 是否有语法错误
nginx -t

# 设置全局命令(如:设置启动用户为 root)
nginx -g "user root;"


在这里插入图片描述


2. 开启

# 开启
nginx
sudo nginx

# 或
start nginx

# 启动,指定 配置文件
nginx -c /usr/local/nginx/nginx.conf
# 启动,指定程序目录启动
nginx -p /usr/local/nginx/

3. 重启

# 重启,重新打开日志文件
nginx -s reopen

# 热加载配置
nginx -s reload

4. 停止

# 快速停止,不保存信息
nginx -s stop

# 等待工作进程处理完成后,保存信息再停止
nginx -s quit

# 查看 nginx 的进程
ps –ef | grep nginx
# 杀死所有 nginx 的进程
kill all nginx
pkill nginx
kill -9 nginx

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ISO 22737-2021预定轨迹低速自动驾驶系统-系统要求、性能要求和性能测试规范(中文全文版)

简介 自动驾驶系统的发展导致了人员、货物和服务运输方式的转变。其中一种新的运输方式是低速自动驾驶(LSAD)系统,它在预定的路线上运行。LSAD系统将被用于最后一英里的运输、商业区的运输、商业或大学校园区以及其他低速环境的应用。 由LSAD系统驾驶的车辆(可以包括与基…

归并排序(Java 实例代码)

目录 归并排序 一、概念及其介绍 二、适用说明 三、过程图示 四、Java 实例代码 MergeSort.java 文件代码&#xff1a; 归并排序 一、概念及其介绍 归并排序&#xff08;Merge sort&#xff09;是建立在归并操作上的一种有效、稳定的排序算法&#xff0c;该算法是采用分…

纯 CSS 开关切换按钮

<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>纯 CSS 开关切换按钮</title><style>html {font-size: 62.5%;}body {background-color: #1848a0;}.wrapper {position: absolute;left: …

克服紧张情绪:程序员面试心理准备的关键

&#x1f337;&#x1f341; 博主猫头虎 带您 Go to New World.✨&#x1f341; &#x1f984; 博客首页——猫头虎的博客&#x1f390; &#x1f433;《面试题大全专栏》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33a; &a…

安卓webview,网页端生成安卓项目(极速生成)教程

安卓webview&#xff0c;网页端生成安卓项目&#xff08;极速生成&#xff09;教程 一&#xff0c;前言 当自己做了一个PC端的页面&#xff0c;也就是前端的页面&#xff0c;或者已经上服的页面&#xff0c;但也想生成一个安卓端供用户使用&#xff0c;本教程详细讲解如何把前…

NeRFMeshing - 精确提取NeRF中的3D网格

准确的 3D 场景和对象重建对于机器人、摄影测量和 AR/VR 等各种应用至关重要。 NeRF 在合成新颖视图方面取得了成功&#xff0c;但在准确表示底层几何方面存在不足。 推荐&#xff1a;用 NSDT编辑器 快速搭建可编程3D场景 我们已经看到了最新的进展&#xff0c;例如 NVIDIA 的 …

随机化快速排序(Java 实例代码)

随机化快速排序 一、概念及其介绍 快速排序由 C. A. R. Hoare 在 1960 年提出。 随机化快速排序基本思想&#xff1a;通过一趟排序将要排序的数据分割成独立的两部分&#xff0c;其中一部分的所有数据都比另外一部分的所有数据都要小&#xff0c;然后再按此方法对这两部分数…

【UE5】用法简介-使用MAWI高精度树林资产的地形材质与添加风雪效果

首先我们新建一个basic工程 然后点击floor按del键&#xff0c;把floor给删除。 只留下空白场景 点击“地形” 在这个范例里&#xff0c;我只创建一个500X500大小的地形&#xff0c;只为了告诉大家用法&#xff0c;点击创建 创建好之后有一大片空白的地形出现 让我们点左上角…

【缓存设计】记一种不错的缓存设计思路

文章目录 前言场景设计思路小结 前言 之前与同事讨论接口性能问题时听他介绍了一种缓存设计思路&#xff0c;觉得不错&#xff0c;做个记录供以后参考。 场景 假设有个以下格式的接口&#xff1a; GET /api?keys{key1,key2,key3,...}&types{1,2,3,...}其中 keys 是业务…

C语言的发展及特点

1. C语言的发展历程 C语言作为计算机编程领域的重要里程碑&#xff0c;其发展历程承载着无数开发者的智慧和创新。C语言诞生于20世纪70年代初&#xff0c;由计算机科学家Dennis Ritchie在贝尔实验室首次推出。当时&#xff0c;Ritchie的目标是为Unix操作系统开发一门能够更方便…

Matlab图像处理-逻辑运算

逻辑运算 图像的逻辑运算主要是针对二值图像&#xff0c;以像素为基础进行的两幅或多幅图像间的操作。 常用的逻辑运算有与、或、非、或非、与非和异或等。 在 MATLAB中&#xff0c;提供了逻辑操作符与(AND)、或(OR)、非(NOT)和异或&#xff08;OR&#xff09;等进行逻辑运算…

2021年03月 C/C++(五级)真题解析#中国电子学会#全国青少年软件编程等级考试

第1题&#xff1a;最小新整数 给定一个十进制正整数n(0 < n < 1000000000)&#xff0c;每个数位上数字均不为0。n的位数为m。 现在从m位中删除k位(0<k < m)&#xff0c;求生成的新整数最小为多少&#xff1f; 例如: n 9128456, k 2, 则生成的新整数最小为12456 时…

校园自动气象站丨感知气象、了解自然

校园自动气象站安装在校园的一个角落中&#xff0c;守护着在学校中师生&#xff0c;时刻观测着校园周围的气象变化&#xff0c;拥有高度集成、低功耗、安装即用、可以用于教学的气象仪器。 校园气象站中配置了多种气象设备&#xff0c;包括但不限于温度传感器、湿度传感器、风…

YOLOv5算法改进(8)— 替换主干网络之MobileNetV3

前言&#xff1a;Hello大家好&#xff0c;我是小哥谈。MobileNetV3是由Google团队在2019年提出的一种卷积神经网络结构&#xff0c;其目标是在保持高性能的同时减少计算延时。MobileNetV3相比于前一版本&#xff08;MobileNetV2&#xff09;在性能上有明显的提升。根据原论文&a…

证明arcsinx+arccosx=π/2,并且为什么arcsinx-arccosx=π/2不成立

下面我们先直接用代数式来证明一下&#xff1a; 设 y 1 arcsin ⁡ x &#xff0c; y 2 arccos ⁡ x &#xff0c;求 y 1 y 2 由于 x sin ⁡ y 1 cos ⁡ y 2 &#xff0c;而 cos ⁡ y 2 sin ⁡ ( y 2 π 2 ) 那么就得到 y 1 y 2 π 2 &#xff0c;即 y 1 − y 2 π 2 …

ViewPager+ Fragment结合的setUserVisibleHint()调用时机

最近的项目使用到了ViewPager Fragment的模式&#xff0c;要求在每次Fragment获取显示的时候来刷新数据&#xff0c;该项目下ViewPager有5个子fragment&#xff0c;在onCreateView及fragment的**setUserVisibleHint&#xff08;bool isVisibleToUser)**中的isVisibleToUser为t…

Jmeter(二十七):BeanShell PostProcessor跨线程全局变量使用

在性能测试中&#xff0c;两个相关联的接口不一定都在同一个线程组&#xff0c;遇见这种情况时&#xff0c;我们要进行跨线程组传参&#xff0c;此处用登录和查询配送单两个请求举例&#xff1b; 1、登录请求中配置json提取器&#xff0c;将接口返回的token保存在变量中&#…

Linux 指令心法(二)`cd` 更改当前目录

文章目录 命令的概述和用途命令的用法命令行选项和参数的详细说明命令的示例命令的注意事项或提示 命令的概述和用途 cd 是 “Change Directory” 的缩写。这是一个 shell 内建命令&#xff0c;用于在 Linux 和 Unix 系统中改变当前工作目录。通过使用 cd 命令&#xff0c;用户…

Python小知识 - Python中的多线程

Python中的多线程 线程是进程中的一个执行单元&#xff0c;是轻量级的进程。一个进程可以创建多个线程&#xff0c;线程之间共享进程的资源&#xff0c;比如内存、文件句柄等。 在Python中&#xff0c;使用threading模块实现线程。 下面的代码创建了两个线程&#xff0c;一个输…

【数学建模】清风数模正课5 相关性分析

相关系数 相关性分析的关键是计算相关系数&#xff0c;在本节课中将会介绍两种常用的相关系数&#xff1a;皮尔逊相关系数&#xff08;Pearson&#xff09;和斯皮尔曼相关系数&#xff08;Spearman&#xff09;。 它们可以用来衡量两个变量间相关性的大小&#xff0c;对于不同…