Linux_28_Linux-Apache

Apache

Apache:一款Web服务程序,通过HTTP和HTTPS提供对应服务

1)具有跨平台、高安全性、快速、可靠和通过简单API扩展等优点

2)默认占用80端口

配置

Apache安装指令:yum install -y httpd


如:在系统中安装Apache程序
在这里插入图片描述

如:启动httpd服务(systemctl start httpd)后,访问本机IP
在这里插入图片描述
//httpd服务没有配置时,Apache程序的默认界面


httpd服务的主要配置文档如下:

文档路径说明
/etc/httpd服务目录
/etc/httpd/conf/httpd.conf主配置文件
/var/www/html存储网站数据的目录
/var/log/httpd/access_log存储访问日志文件
/var/log/httpd/error_log存储错误日志文件

/etc/httpd/conf/httpd.conf:主配置文件中有全局配置、区域配置和注释行三类信息

1)常用的配置参数如下:

参数说明
ServerRoot指定服务目录 (默认为/etc/httpd)
ServerAdmin指定管理员邮箱 (默认为root@localhost)
User指定运行该服务的用户 (默认为apache)
Group指定运行该服务的用户组 (默认为apache)
ServerName指定网站服务器的域名
DocumentRoot指定存储网站数据的目录 (默认为/var/www/html)
Directory指定存储网站数据目录的权限
Listen指定监听的IP地址和端口号 (默认为80)
DirectoryIndex指定默认索引页面 (默认为index.html)
CustomLog指定访问日志文件 (默认为/var/log/httpd/access_log)
ErrorLog指定错误日志文件 (默认为/var/log/httpd/error_log)
Timeout指定网页超时时间 (默认为300s)

如:查看/etc/httpd/conf/httpd.conf文件
在这里插入图片描述
//全局配置:全局性配置参数,作用于所有的子站点

//区域配置:局域性配置参数,作用于针对的独立子站点

//注释行:解释全局配置参数和区域配置参数


如:配置/var/www/html/index.html文件,再访问服务器IP

1)配置文件;
在这里插入图片描述
2)访问IP
在这里插入图片描述
//指定访问其他目录下文件时,需配置SELinux


如:指定存储网站数据的目录为/home/wwwroot,并访问服务器IP

1)建立目录,并配置索引文件
在这里插入图片描述

2)配置httpd服务的主配置文件/etc/httpd/conf/httpd.conf
在这里插入图片描述
3)访问服务器IP
在这里插入图片描述
//出现Apache程序的默认界面,且SELinux报错

4)配置SELinux安全上下文
在这里插入图片描述
5)访问服务器IP
在这里插入图片描述

个人用户主页

个人用户主页:实现每位用户拥有独立的网站

1)Apache程序自带个人用户主页功能(默认关闭)

//通常是基于虚拟网站主机功能部署多个网站实现


如:配置拥有个人用户主页的Apache服务器

1)配置httpd服务的个人用户主页配置文件/etc/httpd/conf.d/userdir.conf
在这里插入图片描述
2)建立存储个人用户主页的网站数据目录,并配置对应权限(一般为755)
在这里插入图片描述

3)配置SELinux策略(SELinux策略默认不允许httpd服务的个人用户主页)
在这里插入图片描述

4)访问mwl用户的个人主页
在这里插入图片描述

//访问个人用户主页格式:IP/~用户名

身份验证主页

身份验证主页:网页不直接将内容显示,而需要对应的身份验证才可查看


htpasswd命令:Apache内置的创建、更新和存储用户名、密码和域的文件

指令格式:htpasswd 选项

选项含义
-c 文件路径创建一个数据库加密文件
-s采用SHA算法对密码进行加密(默认为MD5)
-p取消密码加密(明文密码)
-D 用户名从数据库中删除指定用户

//添加用户为:htpasswd 数据库文件路径 用户名(再输入两次密码)


如:配置拥有身份验证主页的Apache服务器

1)建立用户的密码验证数据库;
在这里插入图片描述

2)配置httpd服务的个人用户主页配置文件/etc/httpd/conf.d/userdir.conf
在这里插入图片描述
3)访问mwl个人用户主页
在这里插入图片描述

虚拟主机

虚拟主机:实现单个服务器上运行多个网站

1)虚拟主机无法实现类似云主机技术的硬件资源隔离

2)Apache的虚拟主机功能是基于用户请求不同IP地址、主机域名或端口号

基于IP

基于IP:服务器有多个IP地址,每个IP地址与服务器上部署的网站相对应

1)当用户请求不同的IP地址时,就访问到不同网站的页面资源


如:配置基于IP地址的虚拟主机

1)配置eno16777736,使其拥有3个IP地址;
在这里插入图片描述
2)重启网络,并验证3个IP地址的连通性
在这里插入图片描述
3)创建各个IP地址的网站数据存储目录和索引页面
在这里插入图片描述
4)配置httpd服务的主配置文件/etc/httpd/conf/httpd.conf
在这里插入图片描述
5)配置SELinux安全上下文
在这里插入图片描述
6)访问192.168.121.28、192.168.121.29和192.168.121.30
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

基于域名

基于域名:根据不同的域名请求,进而传输不同的内容

1)服务器上有且仅有一个可用的IP地址

2)可通过配置DNS解析服务或者/etc/hosts文件实现

// httpd服务会自动识别域名


如:配置基于主机域名的虚拟主机

1)配置/etc/hosts文件实现类似域名解析功能;
在这里插入图片描述
2)创建各个IP地址的网站数据存储目录和索引页面;
在这里插入图片描述
3)配置httpd服务的主配置文件/etc/httpd/conf/httpd.conf
在这里插入图片描述
4)配置SELinux安全上下文;
在这里插入图片描述
5)访问www.mwl128.com、www.mwl129.com、www.mwl130.com
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

基于端口

基于端口:根据不同的端口请求,进而传输不同的内容

1)默认端口号为:80、81、443、488、8008、8009、8443、9000

//httpd服务会自动识别端口


如:配置基于主机端口的虚拟主机

1)创建各个IP地址的网站数据存储目录和索引页面;
在这里插入图片描述
2)配置httpd服务的主配置文件/etc/httpd/conf/httpd.conf(先指定端口);
在这里插入图片描述
在这里插入图片描述

3)配置SELinux安全上下文;
在这里插入图片描述
4)配置SELinux开发6111和6222端口给httpd服务;
在这里插入图片描述
5)访问192.168.121.128:6111和192.168.121.128:6222
在这里插入图片描述
在这里插入图片描述

访问控制

访问控制:Apache程序基于源主机名、源IP或源主机上的浏览器等特征信息对网站上的资源进行访问限制;

指令说明
Allow允许指定主机访问服务器上的网站资源
Deny拒绝指定主机访问服务器上的网站资源
Order定义Allo和Deny指令的作用顺序

1)匹配按照作用顺序进行匹配

2)Order Allow,Deny或Order Deny,Allow三者组成参数

//常用于.conf配置文件控制文档的访问权限


“Order Allow,Deny”先将源主机与允许规则进行匹配

1)匹配成功则允许访问,反之则拒绝访问请求(实现全部都不允许)

2)“Order Deny,Allow”实现全部都允许访问

如:案例1
在这里插入图片描述
//httpd服务在执行时,会根据Order指定的顺序执行,如图中右下角,虽然Allow指定允许全部(但作用顺序不是最后一个),因此httpd服务执行到Deny时,就会拒绝IP1和IP2的访问

如:案例2
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值