配置 Web 服务器练习
一、要求
1.通过https://ip 可以访问到网站首页
2.通过 https://ip/private/ 实现用户访问控制,仅允许已经添加的 tom,jerry 能够访问到 private 子路径的界面
3.通过 https://ip/vrit/ 实现能够访问到将系统 /nginx/virt 目录下的网页文件(/nginx/virt/index.html)
二、实验
1.通过https://ip 可以访问到网站首页
① 首先关闭防火墙以及 selinux
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# setenforce 0
② 启动 nginx 程序发现显示未找到 nginx.service,在下载 nginx 软件包之前需先进行编辑 yum 源配置文件以及挂载磁盘操作
[root@localhost ~]# vim /etc/yum.repos.d/base.repo
[BaseOS]
name=BaseOS
baseurl=file:///mnt/BaseOS
gpgcheck=0
[AppStream]
name=AppStream
baseurl=file:///mnt/AppStream
gpgcheck=0
[root@localhost ~]# mount /dev/sr0 /mnt
mount: /mnt: WARNING: source write-protected, mounted read-only.
③ 下载 nginx 软件包并启动
[root@localhost ~]# dnf install nginx -y
[root@localhost ~]# systemctl start nginx
④ 编辑 nginx 配置文件,添加 server 模块
[root@localhost ~]# vim /etc/nginx/conf.d/ip.conf
⑤ 按照配置文件创建资源文件
[root@localhost ~]# mkdir -pv /www
mkdir: 已创建目录 '/www'
[root@localhost ~]# echo this is www > /www/index.html # 写入内容
⑥ 使用 openssl
工具创建一个新的 RSA 私钥,并生成一个基于该私钥的自签名 X509 证书,用于加密网络通信(通常用于网站启用 HTTPS 协议)。以下信息可随意填写,注意“陕西为shaanxi”
[root@localhost ~]# openssl req -newkey rsa:4096 -nodes -keyout /etc/pki/tls/private/openlab.key -x509 -days 365 -out /etc/pki/tls/certs/openlab.crt
⑦ 重启服务,提供信息响应(加载新的配置)
[root@localhost ~]# systemctl restart nginx
[root@localhost ~]# curl https://192.168.96.142 -k # 加k表示在进行 HTTPS 请求时,跳过对服务器 SSL/TLS 证书的验证
2.通过 https://ip/private/ 实现用户访问控制,仅允许已经添加的 tom,jerry 能够访问到 private 子路径的界面
① 修改 nginx 配置,添加 location 模块
[root@localhost ~]# vim /etc/nginx/conf.d/ip.conf
② 按照配置文件创建资源文件
[root@localhost ~]# mkdir -pv /private
mkdir: 已创建目录 '/private'
[root@localhost ~]# echo this is private > /private/index.html
③ 先进行磁盘挂载,在进行下载操作
[root@localhost ~]# mount /dev/sr0 /mnt # 磁盘挂载
[root@localhost ~]# yum provides htpasswd # 查询htpasswd软件包提供了指定的文件
[root@localhost ~]# yum install httpd-tools # 下载httpd-tools软件包
④ 更新 HTTP 基本认证的用户密码文件
[root@localhost ~]# htpasswd -c /etc/nginx/users tom
New password:
Re-type new password:
Adding password for user tom
[root@localhost ~]# htpasswd /etc/nginx/users jerry
New password:
Re-type new password:
Adding password for user jerry
⑤ 重启程序并测试结果
[root@localhost ~]# systemctl restart nginx
[root@localhost ~]# curl https://192.168.96.142/private/ -u tom -k
[root@localhost ~]# curl https://192.168.96.142/private/ -u jerry -k
3.通过 https://ip/vrit/ 实现能够访问到将系统 /nginx/virt 目录下的网页文件(/nginx/virt/index.html)
① 编辑 nginx 配置文件
[root@localhost ~]# vim /etc/nginx/conf.d/ip.conf
② 按照配置文件创建资源文件
[root@localhost ~]# mkdir -pv /nginx/virt
mkdir: 已创建目录 '/nginx/virt'
[root@localhost ~]# echo this is virt > /nginx/virt/index.html
③ 重启程序并测试结果
[root@localhost ~]# systemctl restart nginx
[root@localhost ~]# curl https://192.168.96.142/virt/ -k
相关文章:

配置 Web 服务器练习
一、要求 1.通过https://ip 可以访问到网站首页 2.通过 https://ip/private/ 实现用户访问控制,仅允许已经添加的 tom,jerry 能够访问到 private 子路径的界面 3.通过 https://ip/vrit/ 实现能够访问到将系统 /nginx/virt 目录下的网页文件࿰…...

Python程序,输入IP,扫描该IP哪些端口对外是开放的,输出端口列表
#!/usr/bin/env python # -*- coding: utf-8 -*-""" IP端口扫描程序 输入IP地址,扫描该IP哪些端口对外是开放的,输出端口列表 """import socket import sys import concurrent.futures import ipaddress from tabulate im…...
如何设置内网映射端口到外网访问?哪些软件可以进行端口映射?
大多数时候我们所使用的服务器都是在内网搭建的,而且内网是可以访问外网的,但外网是没法直接访问内网IP和端口服务的。也就是说外网无法直接访问到内网的网络地址,需要大家去搭建一个内外网互通的桥梁,把内网服务器指定端口映射到…...

OpenCv实战笔记(3)基于opencv实现调用摄像头并实时显示画面
一、实现效果 二、实现原理 使用 OpenCV 打开摄像头,持续捕获视频帧,并在一个窗口中实时显示这些帧,直到用户按下 ESC 键退出。整体流程:打开摄像头(cv::VideoCapture)>创建图像显示窗口(cv…...
QMK键盘固件自定义指南 - 打造你的专属键盘体验
QMK键盘固件自定义指南 - 打造你的专属键盘体验 🚀 前言 在机械键盘的世界里,QMK固件让你的键盘不再只是简单的输入设备,而是可以按照你的意愿定制的强大工具。本文将深入浅出地介绍如何自定义QMK键盘的行为,从基础概念到高级应…...

upload-labs靶场通关详解:第四关
一、分析源代码 可以看出这一关仍然是黑名单验证,但是它禁止了更多的后缀。像php3,php4这类后缀也被加入了黑名单,第三关的方法在这里显然就失效了。那么我们想一想,既然配置文件中存在将php3当作php来执行的功能,那么…...

openharmony系统移植之gpu mesa3d适配
openharmony系统移植之gpu mesa3d适配 文章目录 openharmony系统移植之gpu mesa3d适配1. 环境说明2. gpu内核panfrost驱动2.1 使能panfrost驱动2.2 panfrost dts配置 3. buildroot下测试gpu驱动3.1 buildroot配置编译 4. ohos下mesa3d适配4.1 ohos下mesa3d编译调试4.1.2 编译4.…...

Linux58 ssh服务配置 jumpserver 测试双网卡 为何不能ping通ip地址
判断为NAT模式网卡 能ping 通外网 ens34为仅主机模式网卡 [rootlocalhost network-scripts]# ip route show default default via 10.1.1.254 dev ens33 proto static metric 100 10.0.0.0/8 dev ens33 proto kernel scope link src 10.1.1.37 metric 100 11.0.0.0/8 dev…...
LangChain:大语言模型应用的“瑞士军刀”入门指南
LanChain入门指南 什么是LangChain?LangChain的核心价值1. 模块化设计 - AI界的"乐高积木"2. 典型应用场景 快速入门实战环境准备第一个示例:公司命名生成器进阶功能:带记忆的对话机器人 学习路线建议常见问题解答总结 什么是LangC…...
网站网页经常 400 错误,清缓存后就好了的原因剖析
目录 一、HTTP 400 错误的常见起因(一)URL 有问题(二)缓存或 Cookie 出状况(三)文件尺寸超标(四)请求头信息不对劲二、清缓存为何能奏效三、其他可以尝试的解决办法(一)重新检查 URL(二)暂时关闭浏览器插件(三)切换网络环境(四)更新浏览器版本(五)检查服务器…...
Redis BigKey 问题是什么
BigKey 问题是什么 BigKey 的具体表现是 redis 中的 key 对应的 value 很大,占用的 redis 空间比较大,本质上是大 value 问题。 BigKey怎么找 redis-cli --bigkeysscanBig Key 产生的原因 1.redis数据结构使用不恰当 2.未及时清理垃圾数据 3.对业务预…...

web 自动化之 selenium+webdriver 环境搭建及原理讲解
文章目录 一、web 自动化测试学习说明二、什么 web 自动化测试三、selenium 简介四、web自动化测试环境搭建五、web 自动化测试第一个脚本六、selenium 原理及源码讲解 一、web 自动化测试学习说明 进阶 web 自动化测试学习:掌握 python 编程基础 二、什么 web 自…...

2025ISCC练武校级赛部分题解WP
Web 战胜卞相壹 <!-- 路过的酒罐王柯洁九段说: --> <!-- 会叠棋子有什么用!你得在棋盘内战胜他!我教你个定式,要一直记得!一直! --> <!-- SGF B[ae];B[ce];B[df];B[cg];B[ag];B[ai];B[ci];…...

PyTorch 版本、torchvision 版本和 Python 版本的对应关系
PyTorch 版本、torchvision 版本和 Python 版本的对应关系 在深度学习领域,PyTorch 及其配套库 torchvision 的使用极为广泛。但不同版本的 PyTorch、torchvision 与 Python 之间存在严格的对应关系,若版本搭配不当,会导致代码运行出错…...
uniapp-商城-49-后台 分类数据的生成(方法加精)
前面47和48章节对代码进行了分析和解读。但是还是又很多地方需要加精。如方法中的注释,执行中的提示,特别是添加和修改中,相关值的初始化,另外还有页面的刷新,并且在页面刷新时的异步操作 同步化实现。 但这里唯一不好…...
nginx 配置后端健康检查模块
nginx自带的针对后端节点健康检查的功能比较简单,通过默认自带的ngx_http_proxy_module 模块和ngx_http_upstream_module模块中的参数来完成,当后端节点出现故障时,自动切换到健康节点来提供访问。但是nginx不能事先知道后端节点状态是否健康,后端即使有不健康节点,负载均…...

RS485和RS232 通信配置
RS232 目前硬件上支持RS232的有以下板卡: LubanCat-5IO底板(含有RS232x2) 7.1. 引脚定义 具体的引脚定义可以参考背面的丝印 LubanCat-5IO底板 引脚定义图 7.2. 跳帽配置 LubanCat-5IO底板 鲁班买5IO底板上的RS485和RS232是共用同一组…...

zst-2001 历年真题 设计模式
设计模式 - 第1题 a 设计模式 - 第2题 一个产品可以产生多个就是抽象,一个就是工厂 比如这样 第二题a是意图 bc: d 设计模式 - 第3题 b 设计模式 - 第4题 类图里全是builder,疯狂暗示 设计模式 - 第5题 aa 设计模式 - 第6题 只有工厂方法是创…...
微软系统 红帽系统 网络故障排查:ping、traceroute、netstat
在微软(Windows)和红帽(Red Hat Enterprise Linux,RHEL)等系统中,网络故障排查是确保系统正常运行的重要环节。 ping、traceroute(在Windows中为tracert)和netstat是三个常用的网络…...
11.多用组合和少继承
11.多用组合和少继承 目录介绍 01.前言思考的介绍 1.1 组合优于继承思考1.2 实际中的案例1.3 思考继承的争议 02.绘图应用程序案例 2.1 案例的背景2.2 用继承实现多形状2.3 用组合实现多形状 03.不同鸟类程序案例 3.1 案例的背景3.2 用继承实现多鸟类3.3 继承的问题暴露3.4 用…...
【AWS+Wordpress】将本地 WordPress 网站部署到AWS
前言 自学笔记,解决问题为主,亲测有效,欢迎补充。 本地开发机:macOS(Sequoia 15.0.1) 服务器:AWS EC2(Amazon Linux 2023) 目标:从本地迁移 WordPress 到云…...

鸿蒙NEXT开发动画案例4
1.创建空白项目 2.Page文件夹下面新建Spin.ets文件,代码如下: /*** TODO SpinKit动画组件 - 双粒子旋转缩放动画* author: CSDN-鸿蒙布道师* since: 2025/05/08*/ ComponentV2 export struct SpinFour {// 参数定义Require Param spinSize: number 36…...
Java(day136):Arrays.asList() 方法:如何在 Java 中高效地将数组转化为列表!
前言 在 Java 编程中,数组和集合是两种常用的数据结构。数组是固定大小的容器,而集合则是动态扩展的容器。随着 Java 集合框架的引入,开发者通常更倾向于使用集合类来存储和操作数据,因为集合类提供了更多的功能和灵活性。 然而&a…...

XML语言
XML语言 在开始介绍Mybatis之前,先介绍一下XML语言,XML语言发明最初是用于数据的存储和传输,它是由一个一个的标签嵌套而成 <?xml version"1.0" encoding"UTF-8" ?> <outer> <name>阿伟</name&…...

基于SpringBoot的小区停车位管理系统
作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏:…...

VR博物馆,足不出户云逛展
VR博物馆概念与特点 定义与由来 VR博物馆,即虚拟现实(Virtual Reality)博物馆,是利用计算机技术、互联网和虚拟现实技术,将实体博物馆及其藏品数字化,实现在虚拟空间中的展示和体验的新型博物馆形式。概念起源于20世纪90年代末&…...

uniapp|实现多终端聊天对话组件、表情选择、消息发送
基于UniApp框架,实现跨平台多终端适配的聊天对话组件开发、表情选择交互设计及消息发送,支持文本与表情混合渲染。 目录 聊天界面静态组件实现消息列表布局消息气泡双向布局辅助元素定位与样式静态数据模拟与扩展性设计表情选择器静态模块浮层实现符号网格排列多端样式适配方…...

73页最佳实践PPT《DeepSeek自学手册-从理论模型训练到实践模型应用》
这份文档是一份关于 DeepSeek 自学手册的详细指南,涵盖了 DeepSeek V3 和 R1 模型的架构、训练方法、性能表现以及使用技巧等内容。它介绍了 DeepSeek V3 作为强大的 MoE 语言模型在数学、代码等任务上的出色表现以及其训练过程中的创新架构如多头潜在注意力和多 To…...

stm32 WDG看门狗
目录 stm32 WDG看门狗一、WDG基础知识1)WDG(Watchdog)看门狗简介 二、IWDG独立看门狗1)IWDG键寄存器2)IWDG超时时间 三、WWDG窗口看门狗1)WWDG框图2)WWDG工作特性3)WWDG超时时间4&am…...

BUUCTF——Cookie is so stable
BUUCTF——Cookie is so stable 进入靶场 页面有点熟悉 跟之前做过的靶场有点像 先简单看一看靶场信息 有几个功能点 flag.php 随便输了个admin 根据题目提示 应该与cookie有关 抓包看看 构造payload Cookie: PHPSESSIDef0623af2c1a6d2012d57f3529427d52; user{{7*7}}有…...