Cent OS-7的Apache服务配置

WWW是什么?

WWW(World Wide Web,万维网)是一个全球性的信息空间,其中的文档和其他资源通过URL标识,并通过HTTP或其他协议访问。万维网是互联网的一个重要组成部分,但它并不是互联网的全部。互联网是一个全球性的计算机网络,而万维网则是通过互联网访问的一个庞大信息资源网络。

主要特点和功能

  1. 超文本和超链接:万维网的核心技术之一是超文本标记语言(HTML),它允许创建包含超链接的文档。超链接使得用户可以从一个文档跳转到另一个文档,无论这些文档是否存储在同一台计算机上。
  2. 客户端/服务器架构:万维网采用了客户端/服务器架构。用户通过浏览器(客户端)访问存储在服务器上的网页和其他资源。
  3. 统一资源定位符(URL):URL是万维网上资源的唯一标识符。它包含了资源的位置信息,使得浏览器能够找到并显示该资源。
  4. 超文本传输协议(HTTP):HTTP是万维网上用于客户端和服务器之间通信的协议。它定义了如何通过互联网请求和传输网页和其他资源。

API是什么?

API(Application Programming Interface,应用程序编程接口)是一组定义和协议,用于构建和集成软件应用程序。API允许不同的软件组件在没有人为干预的情况下相互通信。它是一组代码接口,提供给开发者使用,以便他们能够轻松地访问某些功能或数据,而无需了解其内部实现细节。

API的特点和好处

  1. 抽象化:API将复杂的操作封装成简单的函数或方法,使得开发者无需关注底层实现细节,只需调用这些接口即可完成所需的功能。
  2. 重用性:API提供了标准化的接口,使得相同的功能可以在不同的应用程序中被重复使用,从而提高开发效率。
  3. 模块化:API促进了软件的模块化设计,使得系统更易于维护和扩展。
  4. 安全性:通过API,系统可以控制外部访问,确保只有授权的用户或应用才能访问特定的数据或功能。

API的工作原理

API的工作原理可以通过一个银行的例子来形象地理解。假设你有一个银行账户,你可以通过银行的API来查询余额、转账等操作。在这个过程中,API充当了你和银行系统之间的中介。你发送一个请求(例如查询余额),API接收到请求后,会与银行的内部系统进行交互,获取到所需的信息,然后将结果返回给你。

API的类型

API可以分为多种类型,包括但不限于:

  1. 操作系统API:如Windows API、Linux系统调用等,提供操作系统级别的功能。
  2. 编程语言API:如Java的String类、Python的内置函数等,提供编程语言内置的功能。
  3. 第三方库API:如libxml2、CURL等,提供第三方库的功能。
  4. Web API:如RESTful API、SOAP Web服务等,提供通过网络访问的功

能。

半结构化、结构化和非结构化数据

在数据管理和处理领域,数据通常被分为三种主要类型:结构化数据、半结构化数据和非结构化数据。这些分类基于数据的组织和格式。

结构化数据

结构化数据是指具有固定格式或结构的数据,通常存储在关系型数据库中,以行和列的形式组织。这种数据类型严格遵循预定义的模式,例如数据库表中的字段和类型。结构化数据的优点是可以很容易地被查询和分析,因为它的格式是明确和一致的。

半结构化数据

半结构化数据介于结构化数据和非结构化数据之间。它没有像关系型数据库那样的严格结构,但仍然有一定的组织形式。常见的半结构化数据格式包括XML、JSON和HTML。这些格式允许数据具有层次结构,并且可以包含标签或标记来描述数据的内容和结构。

非结构化数据

非结构化数据是指没有固定格式或结构的数据。这种数据类型包括文本文件、图像、音频和视频等。非结构化数据的处理通常更加复杂,因为它没有预定义的模式或结构。然而,随着大数据和机器学习技术的发展,对非结构化数据的分析和利用变得越来越重要。

Web工作原理

Web(万维网)的工作原理基于客户端/服务器架构,涉及多个组件和技术的协同工作。以下是Web工作原理的详细解释:

1. 用户请求

当用户在浏览器中输入URL或点击超链接时,浏览器会生成一个HTTP请求。这个请求包含了用户想要访问的资源的URL以及其他一些信息,如浏览器类型、请求方法(GET、POST等)。

2. 域名解析

URL中的域名部分会被解析为一个IP地址。这个过程通常由域名系统(DNS)完成。DNS会将人类可读的域名(如www.example.com )转换为计算机可识别的IP地址(如192.0.2.1)。

3. 请求发送

一旦域名被解析为IP地址,浏览器会将HTTP请求发送到对应的Web服务器。这个请求通过互联网传输,可能经过多个中间节点。

4. 服务器处理请求

Web服务器接收到请求后,会根据请求的内容进行处理。服务器可能会:

  • 从文件系统中读取静态网页(如HTML、CSS、JavaScript文件)。
  • 调用应用程序服务器来处理动态内容(如PHP、Python、Java等生成的页面)。
  • 查询数据库以获取所需的数据。

5. 响应生成

服务器处理完请求后,会生成一个HTTP响应。这个响应包含了请求的资源(如HTML文档、图片、视频等)以及一些元数据(如状态码、内容类型、缓存控制等)。

6. 响应发送回客户端

服务器将生成的HTTP响应发送回用户的浏览器。这个响应也会通过互联网传输,可能经过多个中间节点。

7. 浏览器渲染内容

浏览器接收到服务器的响应后,会开始解析和渲染内容。浏览器会将HTML文档解析为DOM(文档对象模型),然后根据CSS样式和JavaScript代码来呈现最终的网页内容给用户。

8. 用户交互

用户可以与网页进行交互,如点击链接、填写表单、滚动页面等。这些操作可能会触发新的HTTP请求,从而重复上述过程。

关键技术

  • HTTP:超文本传输协议,用于客户端和服务器之间的通信。
  • HTML:超文本标记语言,用于定义网页的结构和内容。
  • CSS:层叠样式表,用于控制网页的外观和布局。
  • JavaScript:一种编程语言,用于在客户端执行动态操作。
  • DNS:域名系统,用于将域名解析为IP地址。

 

Apache HTTP Server

Apache HTTP Server(简称Apache)是Apache软件基金会(The Apache Software Foundation,ASF)开发的一个开放源码的网页服务器。它广泛应用于各种操作系统中,包括Linux、Windows和macOS等。以下是关于Apache HTTP Server的详细信息:

1. 简介

Apache HTTP Server是一个高性能、可扩展的Web服务器,能够处理大量的并发请求。它以其简单、快速、稳定和安全的特点而闻名,并且可以作为代理服务器使用。

2. 特性

Apache HTTP Server具有以下主要特性:

  • 跨平台:可以在多种操作系统上运行,包括Linux、Windows、macOS等。
  • 安全性:提供了多种安全特性,如SSL/TLS加密、访问控制、防火墙支持等。
  • 可扩展性:通过模块化设计,可以添加或移除功能模块,以满足不同的需求。
  • 高性能:优化了性能,能够处理大量的并发请求。
  • 灵活性:支持多种配置选项,可以根据具体需求进行定制。

3. 安装与配置

Apache的主要配置文件位于/etc/httpd/conf/httpd.conf 路径下。用户可以通过编辑这个文件来配置Apache服务的各种参数,如监听端口、文档根目录、访问控制等。

. 常用模块

Apache HTTP Server支持多种模块,以扩展其功能。以下是一些常用的模块:

  • mod_ssl:提供SSL/TLS加密支持,用于保护数据传输的安全性。
  • mod_php:提供PHP语言的支持,用于运行PHP脚本。
  • mod_rewrite:提供URL重写功能,用于实现友好的URL和SEO优化。
  • mod_proxy:提供代理服务器功能,用于转发请求和负载均衡。

5. 日志文件

Apache HTTP Server生成多个日志文件,用于记录服务器的运行状态和错误信息。以下是一些常见的日志文件:

  • access_log:记录所有访问请求的日志文件,位于/var/log/httpd/access_log路径下。
  • error_log:记录所有错误信息的日志文件,位于/var/log/httpd/error_log路径下。

 

第一部分:基础五步

1,挂载光盘,并写镜像源方便装包

Linux 编写本地仓库

2,寻找我们需要的软件包

yum search http

3,安装软件包

yum install -y  httpd

4,关闭selinux

vim /etc/selinux/config

更改配置文件之后再重启centOS-7,再查看setenforce 0

5,关闭防火墙 systemctl stop firewalld.service

可以看到这个时候服务是正常运行着的 systemctl restart httpd

可以做开机自启动 systemctl enable httpd

实验一:显示默认页面

6,访问http://192.168.23.157,能够正常访问

实验二:自定义页面

7,查找配置文件 rpm -qc httpd

8,通过查看配置文件,找网站首页路径

找到默认页面文件名称

9,修改首页文件  vim /var/www/html/index.html,添加任意内容

如果存在无法访问,那么就是权限的问题。需要检查文件权限: 确保/etc/www/html目录及其内容具有适当的权限,以便Apache服务器可以读取它们。您可以使用以下命令来设置正确的权限:
chown -R www-data:www-data /etc/www/html
chmod -R 755 /etc/www/html

修改权限之后,就能够正常访问了

实验三:自定义首页文件路径及首页文件名

1、创建首页文件目录

mkdir /test

2、修改主配置文件

vim /etc/httpd/conf/httpd.conf

修改首页文件路径

119 DocumentRoot "/test1"

120 #DocumentRoot "/var/www/html"

132 <Directory "/test1">

133 #<Directory "/var/www/html">

修改首页文件名

166     DirectoryIndex wangke.html

3、重启服务 systemctl restart httpd

4、编写首页文件内容 vim /test/1.html

5、访问web网站 http://192.168.23.157

 

实验四:修改端口号

1、修改主配置文件

vim /etc/httpd/conf/httpd.conf

 42 Listen 8080

 43 #Listen 80

2、重启服务

systemctl restart httpd

3、访问web网站 http://192.168.23.157:8080

 

实验五:使用域名访问web网站

修改linux下记录域名的文件 vim /etc/hosts

192.168.23.157 www.testtest.com

然后启动文件使配置生效 /etc/init.d/network restart

修改windows下记录域名的文件

 C:\Windows\System32\drivers\etc\hosts

192.168.23.157 www.testtest.com

在该文件加上了文本之后,还需要刷新DNS缓存 ipconfig /flushdns

然后就能够能够通过域名访问网站了

解决无法访问Linux下/etc/www/html页面的问题

按照以下步骤进行排查和解决:

  1. 检查文件权限: 确保/etc/www/html目录及其内容具有适当的权限,以便Apache服务器可以读取它们。您可以使用以下命令来设置正确的权限:
    sudo chown -R www-data:www-data /etc/www/html
    sudo chmod -R 755 /etc/www/html
  2. 检查Apache配置: 确保Apache配置文件中正确设置了DocumentRoot和其他相关配置。您可以编辑httpd.conf 文件(通常位于/etc/httpd/conf/或/etc/apache2/目录中),并确保以下配置正确:
    DocumentRoot "/etc/www/html"
    <Directory "/etc/www/html">
        Options Indexes FollowSymLinks
       
    AllowOverride None
       
    Require all granted
    </Directory>
  3. 检查Apache模块: 确保启用了必要的Apache模块,例如mod_rewrite和mod_php。您可以使用以下命令来启用这些模块:
    sudo a2enmod rewrite
    sudo a2enmod php
  4. 检查Apache日志: 查看Apache错误日志以获取有关问题的更多信息。错误日志通常位于/var/log/apache2/error.log 或/var/log/httpd/error_log路径下。您可以使用以下命令来查看错误日志:
    tail -f /var/log/apache2/error.log 
  5. 检查SELinux设置: 如果您的系统启用了SELinux,您可能需要调整SELinux设置以允许Apache访问/etc/www/html目录。您可以使用以下命令来临时禁用SELinux:
    sudo setenforce 0
  6. 重启Apache服务器: 在进行上述更改后,重启Apache服务器以应用新的配置:
    sudo systemctl restart apache2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/59880.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

开放式耳机如何选择?五款千万不能错过的开放式耳机机型推荐

在这里我先做一个行业的知识科普&#xff0c;目前市场上有超过80%的品牌&#xff0c;都是非专业的开放式耳机品牌&#xff0c;也就是跨界大牌或者网红品牌&#xff0c;这些品牌由于没有开放式声学的技术沉淀&#xff0c;在制作开放式耳机的时候&#xff0c;通常都是直接套用传统…

补一下 二维 平面直角坐标系 到三维

上一篇帖子写到 二维的平面直角坐标系&#xff0c;是那样的&#xff0c;这次补充一下三维的。首先需要&#xff0c;安装一个包&#xff0c;如下&#xff1a; 然后&#xff0c;把参数输入&#xff0c;输入这个坐标系的参数&#xff0c;如下&#xff1a; 这样就可以输出如下的三…

bat调用Perl脚本接收不到参数

perl -d checkLog.pl --logfileE:\temp4\test.log --batch-name"Test-log"这样写在BAT文件里肯定能接收到参数 checkLog.pl --logfileE:\temp4\test.log --batch-name"Test-log" 但当这样写时,就不一定能接受到参数了! 现象:在Win11系统上还好,只需要在*.…

【机器学习】决定系数(R²:Coefficient of Determination)

决定系数&#xff0c;也称为 R 平方&#xff0c;是一种用于衡量回归模型预测效果的统计指标。它表示了模型解释目标变量总变异的程度&#xff0c;数值介于 0 和 1 之间&#xff0c;数值越接近 1 表明模型的解释力越强。 1. 的定义和公式 的公式如下&#xff1a; 其中&#xf…

推荐JDK1.8 API 中文文档

jdk api 1.8_google.CHM 一&#xff0c;CHM文件下载 最近更新 链接: 百度网盘 请输入提取码 提取码: e4rx 备用 链接: 百度网盘 请输入提取码 提取码: gczr 二&#xff0c;在线下载地址 https://www.oracle.com/java/technologies/javase-jdk8-doc-downloads.html 三&…

AscendC从入门到精通系列(一)初步感知AscendC

1 什么是AscendC Ascend C是CANN针对算子开发场景推出的编程语言&#xff0c;原生支持C和C标准规范&#xff0c;兼具开发效率和运行性能。基于Ascend C编写的算子程序&#xff0c;通过编译器编译和运行时调度&#xff0c;运行在昇腾AI处理器上。使用Ascend C&#xff0c;开发者…

静态库、动态库、framework、xcframework、use_frameworks!的作用、关联核心SDK工程和测试(主)工程、设备CPU架构

1.1库的概念 库&#xff1a;程序代码的集合&#xff0c;编译好的二进制文件加上头文件供使用&#xff0c;共享程序代码的一种方式。 1.2库的分类 根据开源情况分为&#xff1a;开源库&#xff08;能看到具体实现&#xff09;、闭源库&#xff08;只公开调用的的接口&#xf…

天地图入门|标注|移动飞行|缩放,商用地图替换

“天地图”是国家测绘地理信息局建设的地理信息综合服务网站。集成了来自国家、省、市&#xff08;县&#xff09;各级测绘地理信息部门&#xff0c;以及相关政府部门、企事业单位 、社会团体、公众的地理信息公共服务资源&#xff0c;如果做的项目是政府部门、企事业单位尽量选…

Webserver(5.3)线程池实现

目录 线程池locker.hthreadpool.h 线程池 相比于动态地创建子线程&#xff0c;选择一个已经存在的子线程的代价显然要小得多。至于主线程选择哪个子线程来为新任务服务&#xff0c;有多种方式&#xff1a; 主线程使用某种算法来主动选择子线程。最简单、最常用的算法是随机算…

【重装系统后重新配置2】pycharm 终端无法激活conda环境

pycharm 终端无法激活 conda 环境&#xff0c;但是 Windows本地终端是可以激活的 原因是pycharm 默认的终端是 Windows PowerShell 解决方法有两个&#xff1a; 一、在设置里&#xff0c;修改为cmd 二、下面直接选择

云轴科技ZStack助力新远科技开启化工行业智能制造新篇章

新远科技基于云轴科技ZStack Cube超融合和ZStack Zaku容器云平台打造了灵活高效的IT基础设施&#xff0c;实现了IaaS和PaaS层的全面覆盖&#xff0c;优化了资源利用率&#xff0c;降低了硬件成本和运维复杂性&#xff0c;同时强化了数据安全和业务连续性。 化工行业的数字化先…

test 是 JavaScript 中正则表达式对象 (RegExp) 的一种方法,用于测试一个字符串是否匹配某个正则表达式

在你的代码中&#xff0c;test 方法用于验证扫描结果是否符合特定的格式要求。具体来说&#xff0c;/^[A-Za-z\d]{16}$/.test(res.result) 这一行代码用于检查扫描结果 res.result 是否是一个由16个字母或数字组成的字符串。 test 方法的作用 正则表达式匹配&#xff1a; ^ 表…

Golang | Leetcode Golang题解之第546题移除盒子

题目&#xff1a; 题解&#xff1a; func removeBoxes(boxes []int) int {dp : [100][100][100]int{}var calculatePoints func(boxes []int, l, r, k int) intcalculatePoints func(boxes []int, l, r, k int) int {if l > r {return 0}if dp[l][r][k] 0 {r1, k1 : r, k…

数字时代企业的基本数据丢失预防策略

在当今的数字时代&#xff0c;数据丢失预防对企业的重要性怎么强调也不为过。了解与数据丢失相关的风险至关重要&#xff0c;因为人为错误和网络攻击等常见原因可能会产生严重后果。 实施有效的数据丢失预防策略&#xff08;例如安全协议、定期数据备份和员工培训&#xff09;…

使用Element UI实现一个拖拽图片上传,并可以Ctrl + V获取图片实现文件上传

要在 Element UI 的拖拽上传组件中实现 Ctrl V 图片上传功能&#xff0c;可以通过监听键盘事件来捕获粘贴操作&#xff0c;并将粘贴的图片数据上传到服务器。 版本V1&#xff0c;实现获取粘贴板中的文件 注意&#xff0c;本案例需要再你已经安装了Element UI并在项目中正确配…

uni-app小程序echarts中tooltip被遮盖

图表中的文案过长&#xff0c;tooltip溢出容器&#xff0c;会被遮盖住 解决方案&#xff1a; 在echarts的tooltip中有confine属性可将tooltip限制在容器内&#xff0c;不超过容器&#xff0c;就不易被遮盖

设计模式-七个基本原则之一-开闭原则 + SpringBoot案例

开闭原则:(SRP) 面向对象七个基本原则之一 对扩展开放&#xff1a;软件实体&#xff08;类、模块、函数等&#xff09;应该能够通过增加新功能来进行扩展。对修改关闭&#xff1a;一旦软件实体被开发完成&#xff0c;就不应该修改它的源代码。 要看实际场景&#xff0c;比如组内…

【深度学习】— 多输入多输出通道、多通道输入的卷积、多输出通道、1×1 卷积层、汇聚层、多通道汇聚层

【深度学习】— 多输入多输出通道、多通道输入的卷积、多输出通道、11 卷积层、汇聚层、多通道汇聚层 多输入多输出通道多通道输入的卷积示例&#xff1a;多通道的二维互相关运算 多输出通道实现多通道输出的互相关运算 11 卷积层11 卷积的作用 使用全连接层实现 11 卷积小结 …

Spring——入门

概述 Spring是什么 Spring是一款主流的Java EE轻量级开源框架&#xff0c;其目的适用于简化Java企业级应用开发难度和开发周期。Spring用途不仅限于服务器端的开发&#xff0c;从简单性、可测试性和松耦合的角度而言&#xff0c;任何Java应用都可以从Spring中受益。Spring框架…

计算机毕业设计Python+Neo4j中华古诗词可视化 古诗词智能问答系统 古诗词数据分析 古诗词情感分析 PyTorch Tensorflow LSTM

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 作者简介&#xff1a;Java领…