Nginx在Windows上和Linux上(Docker启动)分别配置基本身份认证示例
场景
Nginx代理的资源或网站等,url直接暴露有风险,需要添加身份认证,即输入用户名密码后才能成功访问。
注:
博客:
霸道流氓气质-CSDN博客
实现
Windows上配置Nginx实现基本身份认证
修改nginx的配置文件
添加基本身份认证配置设置auth_basic以及认证用户民密码文件的位置auth_basic_user_file
server {listen 250;server_name 127.0.0.1;location / {root D:/test/;# 基本验证auth_basic "nginx basic auth";auth_basic_user_file D:/test/htpasswd;try_files $uri $uri/ /index.html;index index.html index.htm;}error_page 500 502 503 504 /50x.html;location = /50x.html {root html;}}
这里在D盘test目录下新建文件,新建一个txt文件,修改其内容如下
badao:123456
左边是用户名,右边是密码。多个用户名密码换行继续加
然后修改文件名为htpasswd,并且去掉后缀名,即在d盘test下新建一个htpasswd文件。
启动nginx并访问250端口测试
Linux上Docker启动Nginx配置基本身份认证示例
在linux上的流程类似,只不过密码不能使用明文,需要生成一个加密的密码。
加密密码生成方式:
安装工具httpd
yum install httpd-tools -y
生成密码
htpasswd -nbm badao 123456
回车会输出加密后的密码

复制此密码并生成htpasswd文件
这里在/home/test/nginx/html目录下
touch htpasswd
然后编辑该文件,将上面生成的用户名密码复制进文件。
将nginx的配置文件上传至/home/test/nginx目录下并修改其内容
location / {root /usr/share/nginx/html;# 基本验证auth_basic "nginx basic auth";auth_basic_user_file /usr/share/nginx/html/htpasswd;index index.html index.htm;}
这里注意html首页的路径以及用户名密码文件的路径
然后使用docker启动nginx
docker run --name nginx-auth-test -p 250:250 -v /home/test/nginx/nginx.conf:/etc/nginx/nginx.conf -v /home/test/nginx/html:/usr/share/nginx/html -d nginx
启动成功后访问250进行验证

如果用curl进行请求时,需要携带用户名密码可以使用如下格式
curl --user badao:123456 http://127.0.0.1:250/

相关文章:
Nginx在Windows上和Linux上(Docker启动)分别配置基本身份认证示例
场景 Nginx代理的资源或网站等,url直接暴露有风险,需要添加身份认证,即输入用户名密码后才能成功访问。 注: 博客:霸道流氓气质-CSDN博客 实现 Windows上配置Nginx实现基本身份认证 修改nginx的配置文件 添加基…...
让SQL更优雅!深入浅出【公用表表达式(CTE)】语法及实战案例
全文目录: 开篇语🌟 前言📜 目录💡 什么是CTE?🎨 CTE的语法与结构💥 使用场景:CTE何时更香?🎬 CTE实战案例案例1:统计每个部门的平均薪资案例2&am…...
快递物流查询API接口如何用PHP调用
在现代商业中,供应链的协同运作至关重要。 快递物流查询API接口可以实现供应商、电商平台、物流企业和消费者之间的信息无缝对接,各方能够及时获取快递物流信息,从而更好地协调生产、销售和配送等环节,提高整个供应链的效率和效益…...
【vue2.0入门】vue基本语法
目录 引言一、页面动态插值1. 一般用法 二、计算属性computed三、动态class、style绑定四、条件渲染与列表渲染五、事件处理六、表单输入绑定七、总结 引言 本系列教程旨在帮助一些零基础的玩家快速上手前端开发。基于我自学的经验会删减部分使用频率不高的内容,并不…...
Dubbo使用Nacos作为注册中心
使用 Nacos 作为注册中心实现自动服务发现 本示例演示 Nacos 作为注册中心实现自动服务发现,示例基于 Spring Boot 应用展开,可在此查看 完整示例代码 1 基本配置 1.1 增加依赖 增加 dubbo、nacos-client 依赖: <dependencies><…...
【面试分享】xshell连接Linux服务器22端口执行命令top期间的技术细节和底层逻辑
通过SSH客户端(如Xshell)连接到服务器的22端口并执行top命令,涉及多个技术细节和底层逻辑。以下是对这一过程的详细解释: 一、技术细节 SSH协议: SSH(Secure Shell)是一种网络协议,…...
stm32以太网接口:MII和RMII
前言 使用stm32和lwip进行网络通信开发时,实现结构如下: 而MII和RMII就是stm32与PHY芯片之间的通信接口,类似于I2C、UART等。 stm32以太网模块有专用的DMA控制器,通过AHB接口将以太网内核和存储器相连。 数据发送时,…...
ChromeDriver 官方下载地址_测试自动化浏览器驱动
大家在做selenium自动化测试时,需要下载谷歌浏览器驱动,可以从以下官网地址下载 (1) ChromeDriver 下载地址1 http://chromedriver.storage.googleapis.com/index.html 这个地址最后版本到 114.0.5735.90 (2&#…...
力扣 LeetCode 206. 反转链表(Day2:链表)
解题思路: pre ,cur双指针 需要通过tmp暂存cur的下一个位置,以方便cur的下一步移动 class Solution {public ListNode reverseList(ListNode head) {ListNode pre null;ListNode cur head;while (cur ! null) {ListNode tmp cur.next;c…...
kafka消费数据太慢了,给优化下
原代码 public class KafkaConsumerDemo {public static void main(String[] args) {int numConsumers 5; // 增加消费者的数量for (int i 0; i < numConsumers; i) {new Thread(new KafkaConsumerThread()).start();}}static class KafkaConsumerThread implements Runn…...
ASUS/华硕灵耀X双屏Pro UX8402Z 原厂Win11-22H2系统 工厂文件 带ASUS Recovery恢复
华硕工厂文件恢复系统 ,安装结束后带隐藏分区,一键恢复,以及机器所有驱动软件。 系统版本:windows11 原厂系统下载网址:http://www.bioxt.cn 需准备一个20G以上u盘进行恢复 请注意:仅支持以上型号专用…...
【含开题报告+文档+PPT+源码】基于springboot的毕业设计选题管理系统
开题报告 毕业设计选题作为高校教学环节中的重要一环,其选题质量和管理效率直接关系到学生毕业设计的质量和毕业要求的达成。然而,传统的选题管理方式往往存在信息不对称、流程繁琐、效率低下等问题,无法满足高校教学管理现代化、信息化的需…...
fastadmin常用操作
数据库中遇到的操作 查询字段是json的某个值 $map[json_extract(goods, "$.brand_id")] (int)$params[brand_id]; //获取数据库中某个字段是json中得某个值,进行查询,goods是表中字段,brand_id是json中要查詢的字段。数据类型一定…...
IPguard与Ping32:谁是企业数据防泄密的最佳选择?
在当前信息化快速发展的背景下,企业数据安全已成为公司运营中最重要的议题之一。为了防止数据泄漏,越来越多的企业开始依赖专业的加密软件来进行防护。今天,我们对比了两款业内领先的加密软件——IPguard和Ping32,帮助您选择最适合…...
C++20新特性的补充讲解
C20 标志着 C 语言的一次重要更新,除了 Concepts、Ranges、协程等被广泛讨论的特性外,还有许多值得注意的改进。本文将详细探讨其他一些核心新特性,包括 constexpr 扩展、新增的 std::format、std::span、std::bit 操作、原子智能指针、char8…...
uni-app移动端与PC端兼容预览PDF文件
过程遇到的问题 1、如果用的是最新的版本的pdfjs的话,就会报Promise.withResolvers 不是一个方法的错误,原因是Promise.withResolvers是ES15新特性,想了解可参考链接,这里的解决方案是将插件里的涉及到Promise.withResolvers的地…...
Elman 神经网络算法详解
Elman 神经网络算法详解 一、引言 Elman 神经网络作为一种经典的递归神经网络(RNN),在处理动态系统和时间序列数据方面具有独特的优势。它通过特殊的结构设计,能够有效地捕捉数据中的时间依赖关系,在语音识别、自然语…...
卓胜微嵌入式面试题及参考答案(2万字长文)
freeRTOS 任务是怎么调度的? 在 freeRTOS 中,任务调度主要是基于优先级的抢占式调度。每个任务都有一个优先级,系统会根据任务的优先级来决定哪个任务获得 CPU 的使用权。 当一个高优先级的任务准备运行,并且当前运行的任务优先级较低时,高优先级任务会抢占 CPU。例如,假…...
【Python】爬虫使用代理IP
1、代理池 IP 代理池可以理解为一个池子,里面装了很多代理IP。 池子里的IP是有生命周期的,它们将被定期验证,其中失效的将被从池子里面剔除池子里的ip是有补充渠道的,会有新的代理ip不断被加入池子中池子中的代理ip是可以被随机…...
金融机构-业务架构方案(高光版)
一、金融机构的设计架构 首先视角很重要,比如这样的战略视角,站得高、看得远。设计业务架构,一定要有战略高度和前瞻性。 二、什么样的架构更适合你们公司呢? 三、从架构着手,进行产品和服务创新性变革 四、具体如何设计业务架构呢?...
挑战杯推荐项目
“人工智能”创意赛 - 智能艺术创作助手:借助大模型技术,开发能根据用户输入的主题、风格等要求,生成绘画、音乐、文学作品等多种形式艺术创作灵感或初稿的应用,帮助艺术家和创意爱好者激发创意、提高创作效率。 - 个性化梦境…...
国防科技大学计算机基础课程笔记02信息编码
1.机内码和国标码 国标码就是我们非常熟悉的这个GB2312,但是因为都是16进制,因此这个了16进制的数据既可以翻译成为这个机器码,也可以翻译成为这个国标码,所以这个时候很容易会出现这个歧义的情况; 因此,我们的这个国…...
深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录
ASP.NET Core 是一个跨平台的开源框架,用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录,以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...
synchronized 学习
学习源: https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖,也要考虑性能问题(场景) 2.常见面试问题: sync出…...
C++_核心编程_多态案例二-制作饮品
#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为:煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例,提供抽象制作饮品基类,提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...
React hook之useRef
React useRef 详解 useRef 是 React 提供的一个 Hook,用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途,下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...
2025年能源电力系统与流体力学国际会议 (EPSFD 2025)
2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...
dedecms 织梦自定义表单留言增加ajax验证码功能
增加ajax功能模块,用户不点击提交按钮,只要输入框失去焦点,就会提前提示验证码是否正确。 一,模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...
如何在看板中有效管理突发紧急任务
在看板中有效管理突发紧急任务需要:设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP(Work-in-Progress)弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中,设立专门的紧急任务通道尤为重要,这能…...
在Ubuntu中设置开机自动运行(sudo)指令的指南
在Ubuntu系统中,有时需要在系统启动时自动执行某些命令,特别是需要 sudo权限的指令。为了实现这一功能,可以使用多种方法,包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法,并提供…...

