nginx初学者指南

一、启动、停止和重新加载配置

前提:先要启动nginx

在Windows上启动nginx的步骤如下:

1. 下载并安装nginx。可以从nginx官网下载适合自己操作系统的版本,一般是zip压缩包,解压到指定目录中。

2. 进入nginx的安装目录,找到nginx.exe文件。

3. 双击nginx.exe文件,启动nginx服务。

4. 启动完成后,可以通过输入http://localhost来访问nginx默认页面,如果看到“Welcome to nginx”字样,说明nginx已经成功启动。

如果想要停止nginx的运行,可以使用命令nginx -s stop。如果需要重启nginx,可以使用命令nginx -s reload。

接下来:

实践如下:

现在端口号是81,我改下配置,改成82。

然后执行 nginx -s reload 重新加载

此时,由于更改了配置,原先的端口就不能用了

需要更改位82端口

好的,这就完成了nginx配置的重加载。

原理

二、提供静态功能

准备:

新建一个  data/www 目录(用来放置自己的html页面)

新建一个 data/images 目录 (用来放置自己的图片)

images里放张图片

ww放个自己的html页面

实践

更改一下nginx.conf 配置文件

①注释掉其中所有的内容。

在注释之前,我讲述一下部分的代码的作用。

② 编写nginx.conf文件

这个location块指定了 “/”前缀与来自请求的URI进行比较。 对于匹配请求,URI将添加到 根 指令,也就是说,到/data/www, 在本地文件系统上形成所请求文件的路径。 如果有几个匹配的location块,nginx 选择前缀最长的一个。 上面的location块提供了最短的 前缀,长度为1, #36825;,如果所有其他的location 块无法提供匹配,将使用此块。

http {server {location / {root /data/www;}}
}

接下来,添加第二个location块:

它将匹配以/images/开头的请求 (location / 虽然也匹配这样的请求, 它是较短的前缀)。

http {server {location / {root /data/www;}location /images/ {root /data;}}
}

③重新加载一下配置文件 nginx -s reload

但是报错了???说没有配置事件,那就给它配置一个。

顺便配置一下它监听的端口(ps:因为我的80端口被占用。默认是localhost:80)

events {
#     worker_connections  1024;
}
http {server {listen 82;location / {root /data/www;}location /images/ {root /data;}}
}

现在就可以了。

你试一下,是不是发现还不行!!!因为root配错了

/data 在windows下指的是  D:/data .........

"D:/data/www/index.html" is not found (3: The system cannot find the path specified), client: 127.0.0.1, server: , request: "GET / HTTP/1.1", host: "localhost:82"

因此换成相对路径

events {
#     worker_connections  1024;
}
http {server {listen 82;location / {#  等价于下面  root D:/nginx/nginx-1.22.0-copy/nginx-1.22.0/data/ww  ;root data/ww  ;}location /images/ {#  root D:/nginx/nginx-1.22.0-copy/nginx-1.22.0/data/images/#  这个要认真辨别一下, 当 访问 /images/ , 此时以 data为父路径,data/images/ 。  #  http://localhost:82/images/1.jpg   意味着访问  data/images/1.jpgroot data;}}
}

三、设置简单代理服务器

1. 准备一个springboot应用、修改nginx.conf


events {
#     worker_connections  1024;
}
http {server {listen 82;location / {#  等价于下面  root D:/nginx/nginx-1.22.0-copy/nginx-1.22.0/data/ww  ;root data/ww  ;}location /images/ {#  root D:/nginx/nginx-1.22.0-copy/nginx-1.22.0/data/images/#  这个要认真辨别一下, 当 访问 /images/ , 此时以 data为父路径,data/images/ 。  #  http://localhost:82/images/1.jpg   意味着访问  data/images/1.jpgroot data;}# 配置反向代理location /api/ {proxy_pass  http://localhost:8080/ ;}}
}

2. 访问   http://localhost:82/api/hello

很明显,当访问这个地址时,我们被 代理到了  http://localhost:8080/hello

3. 介绍一下正则表达式(跟本章关系不大...)

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

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

相关文章

Blend for Visual Studio 工具作用

Microsoft Blend(现已更名为 "Blend for Visual Studio")是一款由Microsoft开发的用户界面(UI)设计工具,主要用于创建富有交互性和动画效果的应用程序界面。它通常与Visual Studio集成使用,为开发…

基于Java (spring-boot)的实验室管理系统

一、项目介绍 基于Java (spring-boot)的交通管理系统功能:注册登录、个人信息管理、驾驶证业务类型管理、机动车业务类型管理、新闻类型管理、违法处理业务类型管理、驾驶证业务管理、机动车业务管理、新闻管理、违法处理业务管理、用户管理。 二、作品包含 ​ 三、…

(源码版)2024美国大学生数学建模E题财产保险的可持续模型详解思路+具体代码季节性时序预测SARIMA天气预测建模

本篇文章是: 2024美国大学生数学建模E题财产保险的可持续模型详解思路+具体代码季节性时序预测SARIMA天气预测建模的源码版本,包含具体建模代码到生成模型步骤。那么废话不多说直接开始展示建模过程建模: 数据预处理 之前我给大家提供的一年的风暴数据是远远不够的,要做时…

Redis核心技术与实战【学习笔记】 - 14.Redis 旁路缓存的工作原理及如何选择应用系统的缓存类型

概述 我们知道,Redis 提供了高性能的数据存取功能,广泛应用在缓存场景中,既可以提升业务的响应速度,又可以避免把高并发的请求发送到数据库。 如果 Redis 做缓存时出现了问题,比如说缓存失效,那么&#x…

LeetCode 第27天

39. 组合总和 组合中无重复元素&#xff0c;所有元素可以随便取多少次。那么startIndex就可以从本次遍历处开始。 class Solution { public: // 老套路&#xff0c;两个数组前一个存储中间结果&#xff0c;后一个存储总结果集vector<int> vec;vector<vector<int&…

C++进阶--搜索二叉树

概念 搜索二叉树是一种特殊的二叉树&#xff0c;其具有以下特点&#xff1a; 1.对于每个结点&#xff0c;它的左子树中的所有节点的值都小于该节点的值&#xff0c;而右子树中的所有节点的值都大于该节点的值。 2.左子树和右子树都是搜索二叉树。 这个 特性使得搜索二叉树可…

详解MYSQL中的平均值组大小

文章目录 平均值组大小了解平均值组大小MySQL什么时候会使用平均值组大小平均值组大小对于索引选取的影响平均值组大小 了解平均值组大小 总数据量 / 值组 = 平均值组大小 值组是一组具有相同键前缀值的行,及所有相等的键为一个值组。总数据量为全表数据量MySQL什么时候会使…

2024初始Spring(并使用idea创建springweb项目)

前言 spring呢&#xff0c;以前一直是简单的了解&#xff0c;并没有利用空闲时间去进行对应的深入的学习&#xff0c;今天呢原本是打算好好学的&#xff0c;然后后来呢感觉还是太早了接触&#xff0c;打算把前面知识在过一编之后再开始 Spring介绍 Spring | Home 大家想要访…

SQL必知必会笔记(13~16章)

第十三章 创建高级联结 1、别名&#xff1a;缩短SQL语句&#xff0c;允许在一条Select语句中多次使用相同的表 SELECT A.Name, A.Maths, A.English FROM transcript AS A INNER JOIN student_id As B ON A.Name B.Name; 2、Oracle数据库中没有AS关键字&#xff0c;直接在表名或…

英码科技携手昇腾共建算力底座:推出EA500I超强AI处理能力边缘计算盒子!

在数字经济浪潮中&#xff0c;算力已成为不可或缺的驱动力&#xff0c;为各行各业的数字化转型提供了强大的推动力。面对多元化和供需不平衡的挑战&#xff0c;需要实现从理论架构到软硬件实现的质的飞跃&#xff0c;以满足持续增长的算力需求&#xff0c;华为昇腾在这一方面展…

Css Flex弹性布局中的换行与溢出处理

Css Flex弹性布局中的换行与溢出处理 CSS弹性布局&#xff08;Flex&#xff09;是CSS3中的一种新的布局方式&#xff0c;它能够帮助我们更加灵活地布局元素。在Flex弹性布局中&#xff0c;元素的布局仅依赖于父容器的设置&#xff0c;而不再需要复杂的相对或绝对定位。本文将详…

VS Code+Live Server插件开发游戏并结合内网穿透分享好友异地访问

文章目录 前言1. 编写MENJA小游戏2. 安装cpolar内网穿透3. 配置MENJA小游戏公网访问地址4. 实现公网访问MENJA小游戏5. 固定MENJA小游戏公网地址 前言 本篇教程&#xff0c;我们将通过VS Code实现远程开发MENJA小游戏&#xff0c;并通过cpolar内网穿透发布到公网&#xff0c;分…

人脸识别基本流程

人脸识别一般包括&#xff1a;人脸检测、人脸对齐、人脸特征提取和人脸比对四个步骤 人脸检测&#xff1a;检测到人脸的位置人脸对齐&#xff1a;同一个人采集到的不同图像可能呈现出不同的姿态和表情等&#xff0c;这种情况是不利于人脸特征提取的。所以有必要将人脸图像都变…

安装mongodb数据库,并且新建自己的库

1、拉取mongodb dokcer pull mongo:4.4.132、运行docker安装mongodb docker run -itd --name mongo -v /home/dockerdata/mongo/data:/data/db -p 27017:27017 mongo:4.4.13 --auth3、进入mongdb docker exec -it mongo mongo admin4、创建自己的库 use interfaceLog5、新…

ubuntu系统下c++ cmakelist vscode debug(带传参的debug)的详细示例

c和cmake的debug&#xff0c;网上很多都需要配置launch.json&#xff0c;cpp.json啥的&#xff0c;记不住也太复杂了&#xff0c;我这里使用cmake插件带有的设置&#xff0c;各位可以看一看啊✌(不知不觉&#xff0c;竟然了解了vscode中配置文件的生效逻辑&#x1f923;) 克隆…

【PPT密码】ppt设置的编辑密码,如何取消?

不知道大家是否了解PPT文件的编辑密码&#xff0c;首先ppt中没有限制编辑功能&#xff0c;设置为只读模式后仍然可以编辑文件&#xff0c;但其实有一种类似于限制编辑的加密方式。在我们打开PPT文件的时候会有密码输入框。 如果我们没有输入密码&#xff0c;以只读方式进入&…

Linux项目自动化构建工具之make/Makefile演示gcc编译

文章目录 一、背景二、如何使用&#xff1f;三、原理四、关于make的问题五、再次理解/编写makefile依赖关系依赖方法 六、原理讲解项目清理makefile是支持变量的取消执行make后显示命令依赖方法可以多行 一、背景 会不会写makefile&#xff0c;从一个侧面说明了一个人是否具备…

ResizeObserver的使用

这篇说下ResizeObserver API。ResizeObserver接口监视 Element 内容盒或边框盒或者 SVGElement 边界尺寸的变化。 ResizeObserver避免了通过回调函数调整大小时&#xff0c;通常创建的无限回调循环和循环依赖项。它只能通过在后续的帧中处理 DOM 中更深层次的元素来做到这一点…

Yarn常见问题处理

任务出现container OOM异常导致作业失败 原因 Container内存不足或者作业数据倾斜 解决方案 检查Container相关参数,判断是否设置过小(低于4GB)。如果Container小于4GB,优先考虑调大当前作业container大小,如果是Tez任务,还需要同步调整以下参数 # tez container size…

双非本科准备秋招(17.1)—— 力扣二叉树

1、257. 二叉树的所有路径 要求返回根节点到叶子节点的所有路径&#xff0c;这里用前序遍历就好。 每次递归前&#xff0c;都让字符串s加上当前节点的值和“->”&#xff0c;然后判断是否为叶子节点&#xff0c;如果是的话&#xff0c;说明这条路径是一个答案&#xff0c;因…