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

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/

http://www.lryc.cn/news/483810.html

相关文章:

  • 让SQL更优雅!深入浅出【公用表表达式(CTE)】语法及实战案例
  • 快递物流查询API接口如何用PHP调用
  • 【vue2.0入门】vue基本语法
  • Dubbo使用Nacos作为注册中心
  • 【面试分享】xshell连接Linux服务器22端口执行命令top期间的技术细节和底层逻辑
  • stm32以太网接口:MII和RMII
  • ChromeDriver 官方下载地址_测试自动化浏览器驱动
  • 力扣 LeetCode 206. 反转链表(Day2:链表)
  • kafka消费数据太慢了,给优化下
  • ASUS/华硕灵耀X双屏Pro UX8402Z 原厂Win11-22H2系统 工厂文件 带ASUS Recovery恢复
  • 【含开题报告+文档+PPT+源码】基于springboot的毕业设计选题管理系统
  • fastadmin常用操作
  • IPguard与Ping32:谁是企业数据防泄密的最佳选择?
  • C++20新特性的补充讲解
  • uni-app移动端与PC端兼容预览PDF文件
  • Elman 神经网络算法详解
  • 卓胜微嵌入式面试题及参考答案(2万字长文)
  • 【Python】爬虫使用代理IP
  • 金融机构-业务架构方案(高光版)
  • ubuntu内核切换network unclaimed 网卡丢失
  • 【人工智能】揭秘可解释性AI(XAI):从原理到实战的终极指南
  • 小面馆叫号取餐流程 佳易王面馆米线店点餐叫号管理系统操作教程
  • 图形 2.6 伽马校正
  • LLM - 计算 多模态大语言模型 的参数量(Qwen2-VL、Llama-3.1) 教程
  • 数据可视化这样做,汇报轻松拿捏(附免费好用可视化工具推荐)
  • 杂七杂八之基于JSON Web Token (JWT) 进行API认证和鉴权(Java版)
  • 建设展示型网站企业渠道用户递达
  • 如何通过AB测试找到最适合的Yandex广告内容
  • AI写作(四)预训练语言模型:开启 AI 写作新时代(4/10)
  • 解决Anaconda出现CondaHTTPError: HTTP 000 CONNECTION FAILED for url