当前位置: 首页 > 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。 先来看一下最终…...

vscode里如何用git

打开vs终端执行如下&#xff1a; 1 初始化 Git 仓库&#xff08;如果尚未初始化&#xff09; git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...

深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录

ASP.NET Core 是一个跨平台的开源框架&#xff0c;用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录&#xff0c;以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...

装饰模式(Decorator Pattern)重构java邮件发奖系统实战

前言 现在我们有个如下的需求&#xff0c;设计一个邮件发奖的小系统&#xff0c; 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式&#xff08;Decorator Pattern&#xff09;允许向一个现有的对象添加新的功能&#xff0c;同时又不改变其…...

【WiFi帧结构】

文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成&#xff1a;MAC头部frame bodyFCS&#xff0c;其中MAC是固定格式的&#xff0c;frame body是可变长度。 MAC头部有frame control&#xff0c;duration&#xff0c;address1&#xff0c;address2&#xff0c;addre…...

《Playwright:微软的自动化测试工具详解》

Playwright 简介:声明内容来自网络&#xff0c;将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具&#xff0c;支持 Chrome、Firefox、Safari 等主流浏览器&#xff0c;提供多语言 API&#xff08;Python、JavaScript、Java、.NET&#xff09;。它的特点包括&a…...

Objective-C常用命名规范总结

【OC】常用命名规范总结 文章目录 【OC】常用命名规范总结1.类名&#xff08;Class Name)2.协议名&#xff08;Protocol Name)3.方法名&#xff08;Method Name)4.属性名&#xff08;Property Name&#xff09;5.局部变量/实例变量&#xff08;Local / Instance Variables&…...

Frozen-Flask :将 Flask 应用“冻结”为静态文件

Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是&#xff1a;将一个 Flask Web 应用生成成纯静态 HTML 文件&#xff0c;从而可以部署到静态网站托管服务上&#xff0c;如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...

GC1808高性能24位立体声音频ADC芯片解析

1. 芯片概述 GC1808是一款24位立体声音频模数转换器&#xff08;ADC&#xff09;&#xff0c;支持8kHz~96kHz采样率&#xff0c;集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器&#xff0c;适用于高保真音频采集场景。 2. 核心特性 高精度&#xff1a;24位分辨率&#xff0c…...

HashMap中的put方法执行流程(流程图)

1 put操作整体流程 HashMap 的 put 操作是其最核心的功能之一。在 JDK 1.8 及以后版本中&#xff0c;其主要逻辑封装在 putVal 这个内部方法中。整个过程大致如下&#xff1a; 初始判断与哈希计算&#xff1a; 首先&#xff0c;putVal 方法会检查当前的 table&#xff08;也就…...

LLMs 系列实操科普(1)

写在前面&#xff1a; 本期内容我们继续 Andrej Karpathy 的《How I use LLMs》讲座内容&#xff0c;原视频时长 ~130 分钟&#xff0c;以实操演示主流的一些 LLMs 的使用&#xff0c;由于涉及到实操&#xff0c;实际上并不适合以文字整理&#xff0c;但还是决定尽量整理一份笔…...