10_1 Linunx Web服务管理
10_1 Linunx Web服务管理
文章目录
- 10_1 Linunx Web服务管理
- @[toc]
- 1. 环境准备
- 2. Web服务
- 2.1 Web服务简介
- 2.2 Web配置
- 2.2.1 提供的默认配置
- 2.2.2 Web服务的主配置文件
- 2.2.3 /etc/httpd/conf/httpd.conf 文件反映出来的”访问控制信息“
- 2.2.4 修改监听端口,访问
- 2.2.5 访问Web服务的流程
- 2.3 Web访问出现测试界面的可能
- 2.4 虚拟web主机
- 2.4.1 多页面的实现
- 2.4.2 虚拟Web主机
- 2.4.3 区分方式
- 2.4.4 在”调用配置文件“里增加配置
文章目录
- 10_1 Linunx Web服务管理
- @[toc]
- 1. 环境准备
- 2. Web服务
- 2.1 Web服务简介
- 2.2 Web配置
- 2.2.1 提供的默认配置
- 2.2.2 Web服务的主配置文件
- 2.2.3 /etc/httpd/conf/httpd.conf 文件反映出来的”访问控制信息“
- 2.2.4 修改监听端口,访问
- 2.2.5 访问Web服务的流程
- 2.3 Web访问出现测试界面的可能
- 2.4 虚拟web主机
- 2.4.1 多页面的实现
- 2.4.2 虚拟Web主机
- 2.4.3 区分方式
- 2.4.4 在”调用配置文件“里增加配置
1. 环境准备
- 所有的虚拟机设置SELinux运行模式
[root@server ~]# getenforce
Enforcing
[root@server ~]# setenforce 0
[root@server ~]# getenforce
Permissive
[root@server ~]# vim /etc/selinux/config
SELINUX=permissive
- 所有虚拟机卸载防火墙
[root@server ~]# yum -y remove firewalld
[root@server ~]# rpm -q firewalld
2. Web服务
2.1 Web服务简介
-
基于 B/S (Browser/Server)架构的网页服务
- 服务端提供网页
- 浏览器下载并显示网页
-
Wed服务用到的协议
- Hyper Text Markup Language,(HTML)超文本标记语言
- Hyper Text Transfer Protocol,(HTTP)超文本传输协议
-
配置Wed服务的步骤
- 三步走:装包、配置、启服务
-
实现Web功能的软件
- httpd、Nginx、Tomcat
- httpd由软件基金会Apache
- httpd、Nginx、Tomcat
2.2 Web配置
2.2.1 提供的默认配置
* Listen:监听地址:端口(80)
* ServerName:本站点注册的DNS名称(空缺)
* DocumentRoot:**网页根目录(/var/www/html)**
* DirectoryIndex:**起始页/首页文件名(index.html)**
2.2.2 Web服务的主配置文件
* **/etc/httpd/conf/httpd.conf **
* 因配置**/etc/httpd/conf/httpd.conf**此文件导致web访问失败可能出现的错误有:
[root@server ~]# systemctl restart httpd
Job for httpd.service failed because the control process exited with error code. See "systemctl status httpd.service" and "journalctl -xe" for details.[root@server ~]# journalctl -xe #查错
2.2.3 /etc/httpd/conf/httpd.conf 文件反映出来的”访问控制信息“
1. 当子目录没有规则,默认继承上一级目录规则针对此目录有单独配置,则不继承上一级目录规则<Directory /> Require all denied #拒绝所有人访问</Directory> <Directory "/var/www">Require all granted #允许所有人访问</Directory>总结:默认情况下网页文件,必须在/var/www目录下,才能允许访问2. 将默认DocumentRoot修改为自己的虚拟机A: ]#mkdir /webroot]#echo wo shi webroot > /webroot/index.html]# vim /etc/httpd/conf/httpd.conf…….此处省略一万字DocumentRoot "/webroot"<Directory "/webroot"> #针对于/webroot路径Require all granted #允许所有人访问</Directory>…….此处省略一万字]# systemctl restart httpd #重启服务]# curl 192.168.88.240 wo shi webroot
- 注意: DocumentRoot只有一个是生效的,下面的会覆盖上面的所以下面的生效
2.2.4 修改监听端口,访问
- 主配置文件:/etc/httpd/conf/httpd.conf
- 调用配置文件:/etc/httpd/conf.d/*.conf
- 注意:在”调用配置文件“里添加了DocumentRoot路径后”主配置文件的DocumentRoot“路径被覆盖
1. 端口:数字编号起到标识作用,标识协议或者进程http协议默认端口:80[root@server ~]# vim /etc/httpd/conf.d/haha.conf
DocumentRoot /var/www/cbd
Listen 8000
[root@server ~]# systemctl restart httpd
[root@server ~]# curl 192.168.88.240:8000
[root@server ~]# curl 192.168.88.240 #默认是80端口
2.2.5 访问Web服务的流程
-
DocumentRoot 为自己修改的路径/webroot
客户端curl 192.168.88.240---->http协议方式------>服务端 192.168.88.240—>响应http协议请求----->httpd进程----->主配置文件设置---->DocumentRoot /webroot—>index.html- 注意:所有现有页面都叫index.html,不要修改/etc/httpd/conf/httpd.conf 下的 ”DirectoryIndex index.html“
-
网络路径与实际路径
网络路径: curl 192.168.88.240
实际路径: /webrootDocumentRoot /webroot
网络路径: curl 192.168.88.240/abc
实际路径: /webroot/abcDocumentRoot /webroot
网络路径: curl 192.168.88.240/abc/cbd
实际路径: /webroot/abc/cbd
2.3 Web访问出现测试界面的可能
- 没有网页文件
- 网页文件名称不是index.html
- httpd的访问控制规则拒绝
- SELinux的没有关闭
2.4 虚拟web主机
2.4.1 多页面的实现
- /etc/httpd/conf/httpd.conf提供的DocumnetRoot是一个页面,要想实现多个页面就要使用虚拟Web主机
2.4.2 虚拟Web主机
- 由同一台服务器,提供多个不同的Web站点
2.4.3 区分方式
- 基于域名的虚拟主机
- 基于端口的虚拟主机
- 基于IP地址的虚拟主机
2.4.4 在”调用配置文件“里增加配置
- 域名
1. 为每个虚拟站点添加配置
<VirtualHost IP地址:端口>ServerName 此站点的DNS名称DocumentRoot 此站点的网页根目录
</VirtualHost>2. 示例
(1)虚拟机A: [root@server ~]# vim /etc/httpd/conf.d/xixi.conf<VirtualHost *:80> #在所有IP地址监听80ServerName www.qq.com #网站的域名DocumentRoot /var/www/qq #网页文件路径</VirtualHost> <VirtualHost *:80> ServerName www.lol.comDocumentRoot /var/www/lol</VirtualHost>]#mkdir /var/www/qq /var/www/lol]#echo wo shi QQ > /var/www/qq/index.html]#echo wo shi LOL > /var/www/lol/index.html]#systemctl restart httpd(2)采用/etc/hosts文件直接解析域名,只为本机解析]# vim /etc/hosts …….此处省略一万字192.168.88.240 www.qq.com www.lol.com]# curl www.qq.com]# curl www.lol.com
- 端口
[root@server ~]#vim /etc/httpd/conf.d/xixi.conf
<VirtualHost *:80>ServerName www.qq.comDocumentRoot /var/www/qq
</VirtualHost>
Listen 8080
<VirtualHost *:8080>ServerName www.qq.comDocumentRoot /var/www/lol
</VirtualHost>
[root@server ~]# systemctl restart httpd
[root@server ~]# curl www.qq.com:8080
[root@server ~]# curl www.qq.com
相关文章:
10_1 Linunx Web服务管理
10_1 Linunx Web服务管理 文章目录 10_1 Linunx Web服务管理[toc]1. 环境准备2. Web服务2.1 Web服务简介 2.2 Web配置2.2.1 提供的默认配置2.2.2 Web服务的主配置文件2.2.3 /etc/httpd/conf/httpd.conf 文件反映出来的”访问控制信息“2.2.4 修改监听端口,访问2.2.5…...
苹果WWDC 2024:十三大亮点公布,一切都有关AI|TodayAI
在刚刚结束的苹果全球开发者大会(WWDC 2024)上,苹果公司展示了一系列令人瞩目的新功能,特别是在人工智能(AI)领域的重大进展。以下是本次大会的十三大亮点。 1. 苹果推出首个AI系统 苹果宣布推出其首个AI系统——Apple Intelligence,这一系统将强大的生成模型直接集成到…...
Nginx访问日志
Nginx日志是Nginx Web服务器产生的记录文件,主要用于跟踪和分析服务器的访问情况以及错误信息。Nginx日志主要分为两大类:访问日志 (access_log): 访问日志记录了每一次客户端对Nginx服务器的HTTP请求的详细信息,这对于统计分析、流量监控、用…...
Java使用Hutool工具类轻松生成验证码
一、效果展示 二、Hutool工具类实现验证码生成 2.1 引入依赖 <!--hutool工具包--> <dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.7.15</version> </dependency2.2 简单实现方…...
leetcode 40. 组合总和 II
题目 给定一个候选人编号的集合 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的每个数字在每个组合中只能使用 一次 。 注意:解集不能包含重复的组合。 原题链接:https://leetc…...
AMEYA360代理品牌:ROHM开发出世界超小CMOS运算放大器,适用于智能手机和小型物联网设备等应用
全球知名半导体制造商ROHM(总部位于日本京都市)开发出一款超小型封装的CMOS运算放大器“TLR377GYZ”,该产品非常适合在智能手机和小型物联网设备等应用中放大温度、压力、流量等的传感器检测信号。 智能手机和物联网终端越来越小型化,这就要求搭载的元器…...
第1章Hello world 4/5:对比Rust/Java/C++创建和运行Hello world全过程:运行第一个程序
讲动人的故事,写懂人的代码 1.7 对比Rust/Java/C++创建和运行Hello world全过程 有了会听懂人类的讲话,还能做记录的编程助理艾极思,他们三人的讨论内容,都可以变成一份详细的会议纪要啦。 接下来,我们一起看看艾极思是如何记录下赵可菲创建和运行Java程序Hello world,…...
golang优雅代码【lock实现】
golang优雅代码【lock实现】 1.局部锁1.1 具体实现方式 本文代码风格来源参考 database/sql 包 更加深刻理解go语言圣经中函数是一等公民 1.局部锁 database/sql源码中使用 withLock(dc, func(){...}) 方法实现局部锁,完美利用了 golang 的 defer 关键字对 入参dc…...
Dijkstra算法(迪杰斯特拉算法)
迪杰斯特拉算法通常用在图的最短路径问题上 而迷宫的最短路径可以用BFS来做,虽然BFS不能用于带权值的迷宫,但是可以对BFS稍微改进,只需要把判断是否走过的数组改为最短路径的数组,在判断是否可走时判断是否比最短的小即可 Dijks…...
用函数指针求a和b中的大者
指针变量也可以指向一个函数。一个函数在编译时被分配给一个入口地址。这个函数入口地址就称为函数的指针。可以用一个指针变量指向函数,然后通过该指针变量调用此函数。 先按一般方法编写程序: 可以用一个指针变量指向max函数,然后通过该指…...
鸿蒙轻内核M核源码分析系列六 任务及任务调度(2)任务模块
任务是操作系统一个重要的概念,是竞争系统资源的最小运行单元。任务可以使用或等待CPU、使用内存空间等系统资源,并独立于其它任务运行。鸿蒙轻内核的任务模块可以给用户提供多个任务,实现任务间的切换,帮助用户管理业务程序流程。…...
解决找不到MSVCR120.dll,无法执行代码
msvcr120.dll是Microsoft Visual C 2013 Redistributable Package的一部分,它提供了运行使用Microsoft Visual C 2013编译器编译的程序所需的运行时环境。这个DLL文件包含了在运行使用Visual C编译器(特别是2013版)编译的应用程序时所必需的一…...
Linux iptables详解
前言:事情是这样的。最近部门在进行故障演练,攻方同学利用iptables制造了一个故障。演练最终肯定是取得了理想的效果,即业务同学在规定时间内定位了问题并恢复了业务(ps:你懂得)。 对我个人来讲一直知道iptables的存在࿰…...
Mac电脑arm64芯片Cocoapods 的 ffi 兼容问题
转载请标明出处:https://blog.csdn.net/donkor_/article/details/139505395 文章目录 前言问题分析解决方案总结 前言 今天在改Flutter项目的时候,构建IOS项目时,Cocoapods报错 Error: To set up CocoaPods for ARM macOS, run: arch -x86_6…...
如何提高逻辑性?(小妙招)
在现代社会中,逻辑性是一种至关重要的思维能力。不论是在工作、学习还是生活中,逻辑清晰的人总能更好地解决问题和做出决策。然而,如何提高逻辑性却是许多人头疼的问题。本文将从六个方面详细探讨如何提升逻辑性,包括细心态度、逼…...
2024050501-重学 Java 设计模式《实战命令模式》
重学 Java 设计模式:实战命令模式「模拟高档餐厅八大菜系,小二点单厨师烹饪场景」 一、前言 持之以恒的重要性 初学编程往往都很懵,几乎在学习的过程中会遇到各种各样的问题,哪怕别人那运行好好的代码,但你照着写完…...
0104__Linux 中 nm 命令简介
Linux 中 nm 命令简介_linux nm-CSDN博客...
Linux网络服务
01 Linux网络设置 02 DHCP原理与配置 03 DNS域名解析服务 04 远程访问及控制 05 部署YUM仓库及NFS共享服务 06 PXE高效批量网络装机...
Vue18-列表渲染
一、v-for渲染列表 1-1、遍历数组(用的多) 1-2、key属性 让每一个<li>都有一个唯一的标识! 1、写法一 只有用了遍历的方式(v-for)来生成多个同样结构的数据,必须给每个结构取一个唯一的标识。 2、写法二 或者:…...
【三维重建】增量SFM系统
在学习完鲁鹏老师的三维重建基础后,打算用C代码复现一下增量SFM系统(https://github.com/ldx-star/SFM)。 本项目的最终目标就是通过相机拍摄的多视角视图获取三维点云。由于资金有效,博主使用的是相机是小米12。 先来看一下最终…...
RestClient
什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端,它允许HTTP与Elasticsearch 集群通信,而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级ÿ…...
业务系统对接大模型的基础方案:架构设计与关键步骤
业务系统对接大模型:架构设计与关键步骤 在当今数字化转型的浪潮中,大语言模型(LLM)已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中,不仅可以优化用户体验,还能为业务决策提供…...
K8S认证|CKS题库+答案| 11. AppArmor
目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...
k8s从入门到放弃之Ingress七层负载
k8s从入门到放弃之Ingress七层负载 在Kubernetes(简称K8s)中,Ingress是一个API对象,它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress,你可…...
在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能
下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能,包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...
C++ 基础特性深度解析
目录 引言 一、命名空间(namespace) C 中的命名空间 与 C 语言的对比 二、缺省参数 C 中的缺省参数 与 C 语言的对比 三、引用(reference) C 中的引用 与 C 语言的对比 四、inline(内联函数…...
GitHub 趋势日报 (2025年06月08日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...
今日科技热点速览
🔥 今日科技热点速览 🎮 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售,主打更强图形性能与沉浸式体验,支持多模态交互,受到全球玩家热捧 。 🤖 人工智能持续突破 DeepSeek-R1&…...
【JavaWeb】Docker项目部署
引言 之前学习了Linux操作系统的常见命令,在Linux上安装软件,以及如何在Linux上部署一个单体项目,大多数同学都会有相同的感受,那就是麻烦。 核心体现在三点: 命令太多了,记不住 软件安装包名字复杂&…...
Vue ③-生命周期 || 脚手架
生命周期 思考:什么时候可以发送初始化渲染请求?(越早越好) 什么时候可以开始操作dom?(至少dom得渲染出来) Vue生命周期: 一个Vue实例从 创建 到 销毁 的整个过程。 生命周期四个…...
