RHCE—web服务器

一、web服务器简介

web服务器一般指的是“网站服务器”,是某种驻留在因特网上的计算机程序,可以向请求终端提供服务,主要功能时存储、处理和传递网页给“客户”,传递内容一般是HTML文档、图像、样式表或脚本等,也可以放置网站文件以供浏览或下载。

同理www是world wide web的缩写,也就是全球信息广播的意思。通常说的上网就是使用www来查询用户所需要的信息。www可以结合文字、图形、影像以及声音等多媒体,并通过可以让鼠标单击超链接的方式将信息以Internet传递到世界各处去。

web服务器提供的这些数据大部分都是文件,那么我们需要在服务器端先将数据文件写好,并且放置在某个特殊的目录下面,这个目录就是我们整个网站的首页,在redhat中,这个目录默认在 /var/www/html 。

二:web基础知识总结

1.状态代码:由三位数字组成,第一个数字定义了响应的类别,且有五种可能取值。

  • 1xx:指示信息 —— 表示请求已接收,继续处理

  • 2xx:成功 —— 表示请求已被成功接收、理解、接受

  • 3xx:重定向 —— 要完成请求必须进行更进一步的操作

  • 4xx:客户端错误 —— 请求有语法错误或请求无法实现

  • 5xx:服务器端错误 —— 服务器未能实现合法的请求

2.常见状态代码、状态描述的说明如下

  • 200 OK:客户端请求成功

  • 400 Bad Request:客户端请求有语法错误,不能被服务器所理解

  • 401 Unauthorized:请求未经授权,这个状态代码必须和 WWW-Authenticate 报头域一起使用

  • 403 Forbidden:服务器收到请求,但是拒绝提供服务

  • 404 Not Found:请求资源不存在,举个例子:输入了错误的URL

  • 500 Internal Server Error:服务器发生不可预期的错误

  • 503 Server Unavailable:服务器当前不能处理客户端的请求,一段时间后可能恢复正常

3.http协议请求的工作流程

(1)终端客户在web浏览器地址栏输入访问地址域名售卖

(2)web浏览器请求DNS服务器把域名www.ceshi.com解析成web服务器的IP地址

(3)web浏览器将端口号(默认是80)从访问地址(URL)中解析出来

(4)web浏览器通过解析后的ip地址及端口号与web服务器之间建立一条TCP连接

(5)建立TCP连接后,web浏览器向web服务器发送一条HTTP请求报文

(6)web服务器响应并读取浏览器的请求信息,然后返回一条HTTP响应报文。

(7)web服务器关闭HTTP连接,关闭TCP连接,web浏览器显示访问的网站内容到屏幕上。

一次完整的HTTP请求过程

4.http

在web被访问时通常使用http ,http://为超文本传输协议

超文本传输协议提供软件:Apache nginx stgw jfe Tengin

5. Apache的启用

systemctl enable --now httpd ##开启服务并设定服务位开机启动

firewall-cmd --list-all ##查看火墙信息

firewall-cmd --permanent --add-service=http ##在火墙中永久开启http访问

firewall-cmd --permanent --add-service=https ##在火墙中永久开启https访问

firewall-cmd --reload ##刷新火墙使设定生效

6.Apache的基本信息

服务名称:httpd 配置文件:

/etc/httpd/conf/httpd.conf ##主配置文件

/etc/httpd/conf.d/*.conf ##子配置文件

默认发布目录: /var/www/html

默认发布文件: index.html 默认端口:(http是80,https是443)

用户: apache

日志: /etc/httpd/logs

三:虚拟主机配置实战

实验1:搭建一个web服务器,访问该服务器时显示“hello world”欢迎界面

[root@localhost ~]# yum install httpd    #安装httpd

[root@localhost html]# systemctl start httpd  #开启httpd

[root@localhost ~]# cd /var/www/html/   #进入httpd的默认发布目录
[root@localhost html]# ls
index.html
[root@localhost html]# echo hello world > index.html 
[root@localhost html]# cat index.html 
hello world
[root@localhost html]# curl 172.25.254.25

实验2:建立两个基于ip地址访问的网站,要求如下

  • 该网站ip地址的主机位为100,设置DocumentRoot为/www/ip/100,网页内容为:this is 100。

  • 该网站ip地址主机位为200,设置DocumentRoot为/www/ip/200,网页内容为:this is 200。

准备工作:设置主机IP地址为172.25.254.100和172.25.254.200

配置文件配置虚拟主机标签

[root@localhost ~]#  vim  /etc/httpd/conf.d/vhosts.conf

<virtualhost 172.25.254.100:80>
        servername 172.25.254.100
        documentroot /www/ip/100
</virtualhost>
<virtualhost 172.25.254.200:80>
        servername 172.25.254.200 #访问IP地址
        documentroot /www/ip/200   #访问html路径
</virtualhost>
<directory /www>
  allowoverride none
  require all granted
</directory>

[root@localhost conf]# curl 172.25.254.100
this is 100
[root@localhost conf]# curl 172.25.254.200
this is 200

实验3:建立两个基于不同端口访问的网站,要求如下:

  • 建立一个使用web服务器默认端口的网站,设置DocumentRoo为/www/port/80,网页内容为:the port is 80。

  • 建立一个使用10000端口的网站,设置DocumentRoot为/www/port/10000,网页内容为:the port is 10000。

[root@localhost ~]# mkdir -pv /www/ip/{80,10000}
[root@localhost ~]# echo the port is 80 > /www/ip/80/index.html
[root@localhost ~]# echo the port is 10000 > /www/ip/10000/index.html

[root@localhost ~]# vim  /etc/httpd/conf.d/vhosts.conf

<virtualhost 172.25.254.100:80>
        servername 172.25.254.100
        documentroot /www/ip/80
</virtualhost>
listen 10000  #增加新的端口号
<virtualhost 172.25.254.100:10000>
        servername 172.25.254.100
        documentroot /www/ip/10000
</virtualhost>
<directory /www>
  allowoverride none
  require all granted
</directory>

检测监听端口号

[root@localhost 10000]# netstat -tuanlp |grep httpd

实验4:建立两个基于域名访问的网站,要求如下:

  • 新建一个网站,域名为www.ceshi.com,设置DocumentRoot为/www/name,网页内容为this is test。

  • 新建一个网站,域名为rhce.first.day,同时可通过ce.first.day访问,设置DocumentRoot为/www/ce,网页内容为:today is first day of class。

注意:域名和IP的关系

通过域名可以找到唯一对应的IP地址,一个IP可以有多个域名。一个IP地址可以找到唯一对应的域名。

操作系统缓存:那个主机缓存,就在那个主机下的文件地址缓存

Linux的缓存文件:vim /etc/hosts

一个IP可以拥有两个域名,提供两个网站信息

测试域名是否解析ping+域名

[root@localhost ~]#vim  /etc/httpd/conf.d/vhosts.conf

[root@localhost ~]#systemctl restart httpd

[root@localhost ~]#mkdir /www/{haha,xixi} -pv

[root@localhost ~]#echo this is haha > /www/haha/index.html

[root@localhost ~]#echo this is xixi > /www/xixi/index.html

[root@localhost ~]#curl  http://www.haha.com

[root@localhost ~]#curl http://www.xixi.com

多域名网站搭建成功

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

块存储、文件存储和对象存储详细介绍

块存储、文件存储和对象存储介绍 块存储&#xff1a;像跑车&#xff0c;因为它们都能提供快速的响应和高性能&#xff0c;适合需要即时数据访问的场景&#xff0c;比如数据库和虚拟化技术。 文件存储&#xff1a;像货车&#xff0c;因为它们都能承载大量货物&#xff08;文件&…

ARM base instruction -- umaddl

Unsigned Multiply-Add Long multiplies two 32-bit register values, adds a 64-bit register value, and writes the result to the 64-bit destination register. 将两个32位寄存器值相乘&#xff0c;添加一个64位寄存器值&#xff0c;并将结果写入64位目标寄存器。 64-bit…

bossplayersCTF: 1 靶场渗透

靶场&#xff1a;bossplayersCTF: 1 bossplayersCTF: 1 ~ VulnHubhttps://www.vulnhub.com/entry/bossplayersctf-1,375/ 攻击机&#xff1a;kali-linux-2024 第一部分&#xff1a;信息收集 1,将两台虚拟机网络连接都改为NAT模式&#xff0c;并查看靶机的MAC地址 2&#xff0c;…

【linux学习指南】磁盘分区挂载到目录,形成文件系统挂载点

文章目录 &#x1f4dd;前言&#x1f320; 查看系统分区&#x1f309;制作一个大的磁盘块&#xff0c;就当做一个分区&#x1f309;格式化写入文件系统&#x1f309;将分区挂载到指定的目录&#x1f309;在分区重创建文件&#x1f309;卸载分区&#x1f309;分区挂载到目录才能…

STM32CUBEIDE FreeRTOS操作教程(八):queues多队列

STM32CUBEIDE FreeRTOS操作教程&#xff08;八&#xff09;&#xff1a;queues多队列 STM32CUBE开发环境集成了STM32 HAL库进行FreeRTOS配置和开发的组件&#xff0c;不需要用户自己进行FreeRTOS的移植。这里介绍最简化的用户操作类应用教程。以STM32F401RCT6开发板为例&#…

redis 原理篇 25 网络模型 信号驱动IO 及 异步IO

剩下这两种&#xff0c;用得少&#xff0c;快速过一下&#xff0c; 说啥队列太小&#xff0c;这个不是问题&#xff0c;搞个持久化&#xff0c; 说啥队列元素太频繁导致开销大&#xff0c;这个也没问题&#xff0c;搞成批量入队&#xff0c;减少频率&#xff0c;增大吞吐量&am…

某事业单位转型公益二类后岗位梳理项目纪实

某事业单位转型公益二类后岗位梳理项目纪实 ——公益一类事业单位转型二类后&#xff0c;如何优化岗位配置&#xff0c;梳理岗位职责 【客户行业】事业单位 【问题类型】岗位梳理 【客户背景】 某地公证机构于20世纪90年代经批准设立&#xff0c;是该市司法局直属国家公证…

DNS域名解析服务器--RHCE

1.DNS简介 DNS &#xff08; Domain Name System &#xff09;是互联网上的一项服务&#xff0c;它作为将域名和 IP 地址相互映射的一个分布式 数据库&#xff0c;能够使人更方便的访问互联网 DNS 系统使用的是网络的查询&#xff0c;那么自然需要有监听的 port 。 DNS 使用的是…

Linux案例:DNS服务器配置

Linux案例&#xff1a;DNS服务器配置 实验一&#xff1a;正向解析 服务端配置&#xff1a; [rootserver ~]# setenforce 0 [rootserver ~]# nmcli c modify ens160 ipv4.method manual ipv4.addresses 192.168.70.131/24 ipv4.gateway 192.168.70.2 ipv4.dns 114.114.114.11…

京东创作平台旋转验证码识别

昨天京东创作平台验证码又更新了&#xff0c;变成了这种旋转验证码。经过我们一天的努力&#xff0c;终于完成了这款验证码的数据标记&#xff0c;模型训练。现在正确率达到了几乎100%。 识别代码 只需要获取图片链接&#xff0c;下载图片得到原图&#xff0c;使用下面代码就可…

Spring DispatcherServlet详解

文章目录 Spring DispatcherServlet详解一、引言二、DispatcherServlet的初始化与工作流程1、DispatcherServlet的初始化1.1、加载配置和建立WebApplicationContext1.2、初始化策略 2、DispatcherServlet的工作流程2.1、请求分发2.2、代码示例 三、总结 Spring DispatcherServl…

Ubuntu 安装CUDA, cuDNN, TensorRT(草稿)

文章目录 写在前面一、CUDA, cuDNN, TensorRT 三个库的版本的确定二、解决方法参考链接 写在前面 自己的测试环境&#xff1a; Ubuntu20.04, 本文安装的版本&#xff1a; cuda_11.1.0&#xff1b;cuDNN-8.2.1&#xff1b;TensorRT-8.2.4.2 一、CUDA, cuDNN, TensorRT 三个库…

[GDKOI2024 普及组] 读书(线段树)

luogu 传送门https://www.luogu.com.cn/problem/P10077 解题思路 我们可以贪心地思考&#xff1a;每次寻找最小值&#xff0c;然后去阅读这一章。 直到阅读的章数达到 。 这样&#xff0c;你就可以写出一个 的暴力&#xff0c;拿 40 分。 但是&#xff0c;如果你并不满足于…

TCP/IP基础

TCP/IP的概念 TCP/IP是一个协议簇&#xff0c;包括多个协议 定义了计算机操作系统如何连入因特网&#xff0c;以及数据如何在他们之间传输的标准。 TCP/IP的分层结构 TCP/IP按照层次可以分成四层&#xff0c;应用层、传输层、网络层和数据链路层 应用层 包括虚拟终端协议…

数据迁移: 安全高效转移数据, 满足企业业务需求和技术改进

天津鸿萌科贸发展有限公司从事数据安全服务二十余年&#xff0c;致力于为各领域客户提供专业的数据存储、数据恢复、数据备份、数据迁移等解决方案与服务&#xff0c;并针对企业面临的数据安全风险&#xff0c;提供专业的相关数据安全培训。 鸿萌数据迁移业务为众多企业顺利高效…

可视化建模与UML《类图实验报告》

史铁生&#xff1a; 余华和莫言扛着我上火车&#xff0c; 推着走打雪仗&#xff0c; 还带我偷西瓜&#xff0c; 被人发现后他们拔腿就跑&#xff0c; 却忘了我还在西瓜地里。 一、实验目的&#xff1a; 1、熟悉类图的构件事物。 2、熟悉类之间的泛化、依赖、聚合和组合关系…

Zypher Network:全栈式 Web3 游戏引擎,服务器抽象叙事的引领者

近期&#xff0c;《黑神话&#xff1a;悟空》的爆火不仅让 AAA 游戏重回焦点&#xff0c;也引发了玩家与开发者的热议。Web2 游戏的持续成功导致部分 Web3 玩家们的倒戈&#xff0c;对比之下 Web3 游戏存在生命周期短且商业模式难以明确的问题&#xff0c;尤其在当前加密市场环…

C++11的简介

杀马特主页&#xff1a;羑悻的小杀马特.-CSDN博客 ------ ->欢迎阅读 欢迎阅读 欢迎阅读 欢迎阅读 <------- 目录 一列表初始化的变化&#xff1a; 二左右值即各自引用的概念&#xff1a; 2.1左右…

Java 上机实践3(分支与循环语句)

&#xff08;大家好&#xff0c;今天分享的是Java的相关知识&#xff0c;大家可以在评论区进行互动答疑哦~加油&#xff01;&#x1f495;&#xff09; 目录 实验一&#xff1a;回文数 一、实验目的 二、实验要求 三、程序代码 四、实验结果 实验二&#xff1a;猜数字…

[MRCTF2020]PYWebsite1

如果输入的密钥是对的那么我们就直接跳转到flag.php页面 那么我们直接访问&#x1f60e;&#xff0c;他不带我们去我们自己去. 那就用XFF呗. 知识点&#xff1a; 定义&#xff1a;X-Forwarded-For是一个HTTP请求头字段&#xff0c;用于识别通过HTTP代理或负载均衡方式连接到W…