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。 先来看一下最终…...

MongoDB学习和应用(高效的非关系型数据库)
一丶 MongoDB简介 对于社交类软件的功能,我们需要对它的功能特点进行分析: 数据量会随着用户数增大而增大读多写少价值较低非好友看不到其动态信息地理位置的查询… 针对以上特点进行分析各大存储工具: mysql:关系型数据库&am…...
【Linux】C语言执行shell指令
在C语言中执行Shell指令 在C语言中,有几种方法可以执行Shell指令: 1. 使用system()函数 这是最简单的方法,包含在stdlib.h头文件中: #include <stdlib.h>int main() {system("ls -l"); // 执行ls -l命令retu…...
测试markdown--肇兴
day1: 1、去程:7:04 --11:32高铁 高铁右转上售票大厅2楼,穿过候车厅下一楼,上大巴车 ¥10/人 **2、到达:**12点多到达寨子,买门票,美团/抖音:¥78人 3、中饭&a…...

用docker来安装部署freeswitch记录
今天刚才测试一个callcenter的项目,所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...

企业如何增强终端安全?
在数字化转型加速的今天,企业的业务运行越来越依赖于终端设备。从员工的笔记本电脑、智能手机,到工厂里的物联网设备、智能传感器,这些终端构成了企业与外部世界连接的 “神经末梢”。然而,随着远程办公的常态化和设备接入的爆炸式…...

安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)
船舶制造装配管理现状:装配工作依赖人工经验,装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书,但在实际执行中,工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...
A2A JS SDK 完整教程:快速入门指南
目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库ÿ…...
NPOI Excel用OLE对象的形式插入文件附件以及插入图片
static void Main(string[] args) {XlsWithObjData();Console.WriteLine("输出完成"); }static void XlsWithObjData() {// 创建工作簿和单元格,只有HSSFWorkbook,XSSFWorkbook不可以HSSFWorkbook workbook new HSSFWorkbook();HSSFSheet sheet (HSSFSheet)workboo…...

Ubuntu系统复制(U盘-电脑硬盘)
所需环境 电脑自带硬盘:1块 (1T) U盘1:Ubuntu系统引导盘(用于“U盘2”复制到“电脑自带硬盘”) U盘2:Ubuntu系统盘(1T,用于被复制) !!!建议“电脑…...
git: early EOF
macOS报错: Initialized empty Git repository in /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/.git/ remote: Enumerating objects: 2691797, done. remote: Counting objects: 100% (1760/1760), done. remote: Compressing objects: 100% (636/636…...