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

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 在”调用配置文件“里增加配置

1. 环境准备

  1. 所有的虚拟机设置SELinux运行模式
[root@server ~]# getenforce
Enforcing
[root@server ~]# setenforce 0
[root@server ~]# getenforce
Permissive
[root@server ~]# vim   /etc/selinux/config
SELINUX=permissive
  1. 所有虚拟机卸载防火墙
[root@server ~]# yum  -y  remove  firewalld
[root@server ~]# rpm   -q  firewalld

2. Web服务

2.1 Web服务简介

  1. 基于 B/S (Browser/Server)架构的网页服务

    • 服务端提供网页
    • 浏览器下载并显示网页
  2. Wed服务用到的协议

    • Hyper Text Markup Language,(HTML)超文本标记语言
    • Hyper Text Transfer Protocol,(HTTP)超文本传输协议
  3. 配置Wed服务的步骤

    • 三步走:装包、配置、启服务
  4. 实现Web功能的软件

    • httpd、Nginx、Tomcat
      • httpd由软件基金会Apache

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服务的流程

  1. 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“
  2. 网络路径与实际路径

网络路径: 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访问出现测试界面的可能

  1. 没有网页文件
  2. 网页文件名称不是index.html
  3. httpd的访问控制规则拒绝
  4. 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. 域名
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
  1. 端口
[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 修改监听端口&#xff0c;访问2.2.5…...

苹果WWDC 2024:十三大亮点公布,一切都有关AI|TodayAI

在刚刚结束的苹果全球开发者大会(WWDC 2024)上,苹果公司展示了一系列令人瞩目的新功能,特别是在人工智能(AI)领域的重大进展。以下是本次大会的十三大亮点。 1. 苹果推出首个AI系统 苹果宣布推出其首个AI系统——Apple Intelligence,这一系统将强大的生成模型直接集成到…...

Nginx访问日志

Nginx日志是Nginx Web服务器产生的记录文件&#xff0c;主要用于跟踪和分析服务器的访问情况以及错误信息。Nginx日志主要分为两大类&#xff1a;访问日志 (access_log): 访问日志记录了每一次客户端对Nginx服务器的HTTP请求的详细信息&#xff0c;这对于统计分析、流量监控、用…...

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 &#xff0c;找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的每个数字在每个组合中只能使用 一次 。 注意&#xff1a;解集不能包含重复的组合。 原题链接&#xff1a;https://leetc…...

AMEYA360代理品牌:ROHM开发出世界超小CMOS运算放大器,适用于智能手机和小型物联网设备等应用

全球知名半导体制造商ROHM(总部位于日本京都市)开发出一款超小型封装的CMOS运算放大器“TLR377GYZ”&#xff0c;该产品非常适合在智能手机和小型物联网设备等应用中放大温度、压力、流量等的传感器检测信号。 智能手机和物联网终端越来越小型化&#xff0c;这就要求搭载的元器…...

第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(){...}) 方法实现局部锁&#xff0c;完美利用了 golang 的 defer 关键字对 入参dc…...

Dijkstra算法(迪杰斯特拉算法)

迪杰斯特拉算法通常用在图的最短路径问题上 而迷宫的最短路径可以用BFS来做&#xff0c;虽然BFS不能用于带权值的迷宫&#xff0c;但是可以对BFS稍微改进&#xff0c;只需要把判断是否走过的数组改为最短路径的数组&#xff0c;在判断是否可走时判断是否比最短的小即可 Dijks…...

用函数指针求a和b中的大者

指针变量也可以指向一个函数。一个函数在编译时被分配给一个入口地址。这个函数入口地址就称为函数的指针。可以用一个指针变量指向函数&#xff0c;然后通过该指针变量调用此函数。 先按一般方法编写程序&#xff1a; 可以用一个指针变量指向max函数&#xff0c;然后通过该指…...

鸿蒙轻内核M核源码分析系列六 任务及任务调度(2)任务模块

任务是操作系统一个重要的概念&#xff0c;是竞争系统资源的最小运行单元。任务可以使用或等待CPU、使用内存空间等系统资源&#xff0c;并独立于其它任务运行。鸿蒙轻内核的任务模块可以给用户提供多个任务&#xff0c;实现任务间的切换&#xff0c;帮助用户管理业务程序流程。…...

解决找不到MSVCR120.dll,无法执行代码

msvcr120.dll是Microsoft Visual C 2013 Redistributable Package的一部分&#xff0c;它提供了运行使用Microsoft Visual C 2013编译器编译的程序所需的运行时环境。这个DLL文件包含了在运行使用Visual C编译器&#xff08;特别是2013版&#xff09;编译的应用程序时所必需的一…...

Linux iptables详解

前言&#xff1a;事情是这样的。最近部门在进行故障演练&#xff0c;攻方同学利用iptables制造了一个故障。演练最终肯定是取得了理想的效果&#xff0c;即业务同学在规定时间内定位了问题并恢复了业务(ps&#xff1a;你懂得)。 对我个人来讲一直知道iptables的存在&#xff0…...

Mac电脑arm64芯片Cocoapods 的 ffi 兼容问题

转载请标明出处&#xff1a;https://blog.csdn.net/donkor_/article/details/139505395 文章目录 前言问题分析解决方案总结 前言 今天在改Flutter项目的时候&#xff0c;构建IOS项目时&#xff0c;Cocoapods报错 Error: To set up CocoaPods for ARM macOS, run: arch -x86_6…...

如何提高逻辑性?(小妙招)

在现代社会中&#xff0c;逻辑性是一种至关重要的思维能力。不论是在工作、学习还是生活中&#xff0c;逻辑清晰的人总能更好地解决问题和做出决策。然而&#xff0c;如何提高逻辑性却是许多人头疼的问题。本文将从六个方面详细探讨如何提升逻辑性&#xff0c;包括细心态度、逼…...

2024050501-重学 Java 设计模式《实战命令模式》

重学 Java 设计模式&#xff1a;实战命令模式「模拟高档餐厅八大菜系&#xff0c;小二点单厨师烹饪场景」 一、前言 持之以恒的重要性 初学编程往往都很懵&#xff0c;几乎在学习的过程中会遇到各种各样的问题&#xff0c;哪怕别人那运行好好的代码&#xff0c;但你照着写完…...

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、遍历数组&#xff08;用的多&#xff09; 1-2、key属性 让每一个<li>都有一个唯一的标识&#xff01; 1、写法一 只有用了遍历的方式(v-for)来生成多个同样结构的数据&#xff0c;必须给每个结构取一个唯一的标识。 2、写法二 或者&#xff1a;…...

【三维重建】增量SFM系统

在学习完鲁鹏老师的三维重建基础后&#xff0c;打算用C代码复现一下增量SFM系统&#xff08;https://github.com/ldx-star/SFM&#xff09;。 本项目的最终目标就是通过相机拍摄的多视角视图获取三维点云。由于资金有效&#xff0c;博主使用的是相机是小米12。 先来看一下最终…...

手游刚开服就被攻击怎么办?如何防御DDoS?

开服初期是手游最脆弱的阶段&#xff0c;极易成为DDoS攻击的目标。一旦遭遇攻击&#xff0c;可能导致服务器瘫痪、玩家流失&#xff0c;甚至造成巨大经济损失。本文为开发者提供一套简洁有效的应急与防御方案&#xff0c;帮助快速应对并构建长期防护体系。 一、遭遇攻击的紧急应…...

深入剖析AI大模型:大模型时代的 Prompt 工程全解析

今天聊的内容&#xff0c;我认为是AI开发里面非常重要的内容。它在AI开发里无处不在&#xff0c;当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗"&#xff0c;或者让翻译模型 "将这段合同翻译成商务日语" 时&#xff0c;输入的这句话就是 Prompt。…...

rknn优化教程(二)

文章目录 1. 前述2. 三方库的封装2.1 xrepo中的库2.2 xrepo之外的库2.2.1 opencv2.2.2 rknnrt2.2.3 spdlog 3. rknn_engine库 1. 前述 OK&#xff0c;开始写第二篇的内容了。这篇博客主要能写一下&#xff1a; 如何给一些三方库按照xmake方式进行封装&#xff0c;供调用如何按…...

JavaScript 中的 ES|QL:利用 Apache Arrow 工具

作者&#xff1a;来自 Elastic Jeffrey Rengifo 学习如何将 ES|QL 与 JavaScript 的 Apache Arrow 客户端工具一起使用。 想获得 Elastic 认证吗&#xff1f;了解下一期 Elasticsearch Engineer 培训的时间吧&#xff01; Elasticsearch 拥有众多新功能&#xff0c;助你为自己…...

在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:

在 HarmonyOS 应用开发中&#xff0c;手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力&#xff0c;既支持点击、长按、拖拽等基础单一手势的精细控制&#xff0c;也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档&#xff0c…...

汽车生产虚拟实训中的技能提升与生产优化​

在制造业蓬勃发展的大背景下&#xff0c;虚拟教学实训宛如一颗璀璨的新星&#xff0c;正发挥着不可或缺且日益凸显的关键作用&#xff0c;源源不断地为企业的稳健前行与创新发展注入磅礴强大的动力。就以汽车制造企业这一极具代表性的行业主体为例&#xff0c;汽车生产线上各类…...

sqlserver 根据指定字符 解析拼接字符串

DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...

论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一)

宇树机器人多姿态起立控制强化学习框架论文解析 论文解读&#xff1a;交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架&#xff08;一&#xff09; 论文解读&#xff1a;交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化…...

Linux 内存管理实战精讲:核心原理与面试常考点全解析

Linux 内存管理实战精讲&#xff1a;核心原理与面试常考点全解析 Linux 内核内存管理是系统设计中最复杂但也最核心的模块之一。它不仅支撑着虚拟内存机制、物理内存分配、进程隔离与资源复用&#xff0c;还直接决定系统运行的性能与稳定性。无论你是嵌入式开发者、内核调试工…...

Rust 开发环境搭建

环境搭建 1、开发工具RustRover 或者vs code 2、Cygwin64 安装 https://cygwin.com/install.html 在工具终端执行&#xff1a; rustup toolchain install stable-x86_64-pc-windows-gnu rustup default stable-x86_64-pc-windows-gnu ​ 2、Hello World fn main() { println…...