Web 服务器的搭建
目录
1.web的简介
2.搭建web服务器实现访问网站
2.1 环境准备
2.2搭建http服务
2.3搭建https服务
1.web的简介
1.1什么是web
Web(全称为World Wide Web)是一种基于互联网的信息交流和共享方式。它是由许多相互连接的网页组成的系统,这些网页包含了文本、图像、音频、视频和其他形式的多媒体内容。Web 使用一种称为超文本的方式来链接网页,使得用户可以通过点击链接在不同的网页之间导航,并访问到不同的内容。
Web 的核心技术是HTTP(Hypertext Transfer Protocol,超文本传输协议),它定义了在网络上进行文档传输的规则。通过浏览器等客户端软件,用户可以使用HTTP与Web服务器进行通信,请求和接收网页内容,并在自己的设备上进行显示和交互。
1.2什么是http
HTTP(Hypertext Transfer Protocol)是一种在计算机网络上进行数据通信的应用层协议,是Web通信的基础。HTTP协议是为 Web 浏览器和 Web 服务器之间传输数据而特别设计的。HTTP协议通常运行在TCP/IP协议栈之上,在客户端和服务器之间进行数据交换。HTTP协议使用请求(request)和响应(response)的方式进行通信,客户端发送请求,并等待服务端回应。
HTTP协议以设计简单、通用、快速、灵活等特点广泛应用于万维网上,通过浏览器或是其他工具可以方便地访问网站、获取资源、交互数据等。HTTP协议支持多种不同的请求方式,如GET、POST、PUT、DELETE等,也支持多种数据格式的传输,如HTML、XML、JSON等,因此被广泛应用于Web应用程序的开发中。
1.3什么是https
HTTPS(Hypertext Transfer Protocol Secure)是一种加密通信协议,是HTTP协议的安全版本,它提供了对 Web 客户端和服务器之间数据传输过程的加密保护和完整性验证。在HTTPS协议之下,通过 SSL/TLS 协议在传输层对数据进行加密,从而保障客户端和服务器之间的通信安全。
和普通的 HTTP 协议不同,HTTPS 在传输数据时会对数据进行加密,使得数据传输过程中不易被窃取或篡改,能够更好地保障用户的隐私安全。通常,HTTPS 协议在 Web 应用程序中被用于处理用户敏感信息,比如登录密码、银行卡信息、个人信息等。
为了保证网站使用 HTTPS 协议的合法性,Web浏览器会在访问网站时验证网站的安全证书,这个证书包括了网站的身份和公钥。如果验证通过,浏览器会自动将数据通过公钥进行加密,然后再发送给服务器。同时,HTTPS 协议的应用也需要在服务器上安装 SSL/TLS 证书,用于识别服务器身份,并通过 SSL/TLS 协议建立加密的数据传输通道。
2.搭建web服务器实现访问网站
2.1 环境准备
2.1.0 要求介绍
1.基于域名www.openlab.com可以访问网站内容为 welcome to openlab!!!
2.给该公司创建三个网站目录分别显示学生信息,教学资料和缴费网站,基于www.openlab.com/student 网站访问学生信息,www.openlab.com/data网站访问教学资料 www.openlab.com/money网站访问缴费网站。
3.(1)学生信息网站只有song和tian两人可以访问,其他网站所有用户用能访问。
(2)访问缴费网站实现数据加密基于https访问。
2.1.1进行挂载并关闭防火墙和selinux
[root@localhost ~]# mount /dev/sr0 /mnt
mount: /mnt: WARNING: source write-protected, mounted read-only.
#强调权限问题,目前可以不用管
[root@localhost ~]# systemctl stop firewalld.service #关闭防火墙
[root@localhost ~]# setenforce 0 #禁止selinux
2.1.2安装对应的httpd软件
[root@localhost ~]# yum install httpd -y #安装http服务软件
2.2搭建http服务
2.2.1我们一般做实验时不在他的主配置文件操作,一般都是重新建立一个文件
1.基于域名www.openlab.com可以访问网站内容为 welcome to openlab!!!
1.vim /etc/httpd/conf/httpd.conf #主配置文件
vim /etc/httpd/conf.d/vhosts.conf #建立一个子配置文件,里面放置我们需要的文件
2.#在子配置文件中配置
DocumentRoot /www #文件存在的目录
ServerName www.openlab.com #域名
AllowOverride none
Require all granted
mkdir /www #创建目录
echo welcome to openlab!!! > /www/index.html #给预定义网页插入内容
3.firewall-cmd --permanent --add-service=http #在防火墙开着的情况让他允许http服务运行
chcon --reference /var/www/html /www -R
# 确保/www 与 /var/www/html 有相同的安全策略和权限设置
4. systemctl restart httpd #然后重启服务
5.在windows系统中的文件中增加ip和对应的域名
在C:\Windows\System32\drivers\etc 下面的hosts添加
192.168.91.132 www.openlab.com
注意:因为hosts文件里面存放的信息可以将ip转换为对应的域名 提供给用户访问 所以需要对hosts文件进行更改 这边如果没办法保存hosts的话,因为权限问题就把他保存在别的路径下,然后给原来的hosts文件加上.bak后缀,让他做备份,移动新保存的hosts文件至当前目录下,就可以在浏览器中访问。
结果:
2.2.2 配置子界面
我们已经配置好http服务,然后成功访问到主页面,我们搭建的http服务已成功,现在为了完善网站还需给他配置子页面
1.配置data子界面
mkdir /www/student 先创建目录文件
echo this is data > /www/data/index.html 给子页面输入内容
然后可以测试访问:http://www.openlab.com/data/
2.创建student子界面
mkdir /www/student
echo this is student > /www/student/index.html
简单的子页面也已初步完成
-------------------------------------------------------------------------------------------------------------------------
追加配置进 vim /etc/httpd/conf.d/vhosts.conf
AllowOverride none AuthType Basic AuthName "......" AuthUserFile /etc/httpd/users Require user song tian
功能:因为相当是控制student子页面信息 追加这些配置之后,然后添加用户,实现可以控制student子页面只有song和tian用户按照相应的用户和密码登录产看子页面
htpasswd -c /etc/httpd/users song 建立用户song htpasswd /etc/httpd/users tian 建立用户tian 不能再用-c。否则会覆盖上一个新建的用户
注意:别忘记重启服务哦 改配置 启服务六字口诀要牢记
2.3搭建https服务
搭建这个https服务时穿插了创建money这个子页面,以便更好的理解该服务
1.安装关于https的安全模块
yum install mod_ssl -y 安装软件
追加配置进 vim /etc/httpd/conf.d/vhosts.conf
ServerName www.openlab.com DocumentRoot /private SSLEngine on SSLCertificateFile /etc/pki/tls/certs/openlab.crt SSLCertificateKeyFile /etc/pki/tls/private/openlab.key AllowOverride none Require all granted
2.创建目录
mkdir /private/money -pv
3.给页面文件添加东西
echo this is money > /private/money/index.html
4.生成证书和密钥对,然后将它们配置到 HTTPS 服务器中,以启用 HTTPS 协议,确保客户端与服务器之间的通信是加密的,从而保护数据的隐私和安全。
openssl req -newkey rsa:4096 -nodes -sha256 -keyout /etc/pki/tls/private/openlab.key -x509 -days 365 -out /etc/pki/tls/certs/openlab.crt
5.https服务搭建完成并实现访问缴费网站实现数据加密基于https访问。