当前位置: 首页 > article >正文

Web 网站服务(二):深入探索 Apache 的高级功能

一、http 服务控制

  1. http 服务访问控制的作用和实现方式

    • 作用
      • 限制指定的 IP 地址或者主机访问网站数据,增强网站服务器端的安全性。
    • 实现方式
      • 客户端机地址列表:可以限制指定的 IP 地址、主机或者 IP 地址范围访问网站。
      • 网站服务器端开启身份验证:支持基本身份认证和摘要身份验证。
  2. 客户端地址访问限制

    • 应用位置:可以在<Directory><location><Files><limit>等位置进行客户端地址限制。
    • 客户端限制列表的类型
      • Require all granted:允许所有人访问。
      • Require all denied:拒绝所有人访问。
      • Require local:限制本地主机或者 IP 地址访问。
      • Require not host:限制指定的域名。
      • Require not ip:限制指定的 IP 地址。
  3. Apache 支持的验证类型

    • 基本验证:Apache 服务自带的身份验证。
    • 摘要验证:需要依赖 httpd-tools 工具生成验证数据库,然后 Apacha 加载验证数据进行用户验证。
  4. 配置客户端地址列表限制使用

    • 修改主配置文件,添加拒绝特定主机访问的配置,如[root@centos01 ~]# vim /usr/local/httpd/conf/httpd.conf中设置135 deny from 192.168.100.40拒绝主机 192.168.100.40 访问,同时设置136 Allow from all允许其他所有访问。
    • 重启服务,使用命令[root@centos01 ~]# systemctl restart httpd
  5. 配置基本身份验证

    • 安装 httpd-tools 工具,使用命令[root@centos01 ~]# rpm -ivh /mnt/Packages/httpd-tools-2.4.6-67.el7.centos.x86_64.rpm
    • 生成验证数据库,使用命令[root@centos01 ~]# htpasswd -c /usr/local/httpd/password admin创建数据库并添加 admin 用户,再使用[root@centos01 ~]# htpasswd /usr/local/httpd/password bob添加新用户 bob。
    • 修改主配置文件,添加身份验证相关配置,如137 AuthName "test"设置验证名字,138 AuthType Basic开启基本身份验证,139 AuthUserFile /usr/local/httpd/password指定验证数据库,140 Require valid-user经过身份验证允许访问。

二、虚拟主机

  1. 虚拟主机的作用和实现方式

    • 作用
      • 一台网站服务器可以部署多个 web 站点,提高服务器硬件使用率。
    • 实现方式
      • IP 地址虚拟主机。
      • 端口虚拟主机。
      • 主机头虚拟主机。
  2. 虚拟主机区别

    • IP 地址虚拟主机:网站服务器配置多个 IP 地址,不同的 web 站点监听不同的端口号。
    • 端口的虚拟机:相同 IP 地址不同端口号区分不同的 web 站点。
    • 主机头虚拟主机:相同 IP 地址和相同端口,通过不同域名区分不同的 web 站点。
  3. 虚拟主机全局配置

    • 创建虚拟主机根目录并设置主页,使用命令[root@centos01 ~]# mkdir /web创建虚拟主机根目录,再分别创建两个网站虚拟主机目录[root@centos01 ~]# mkdir /web/benetcom[root@centos01 ~]# mkdir /web/accpcom,并设置主页内容,如[root@centos01 ~]# echo "www.benet.com" > /web/benetcom/index.html[root@centos01 ~]# echo "www.accp.com" > /web/accpcom/index.html
    • 修改 Apache 主配置文件开启虚拟主机功能,在主配置文件中添加相关配置,如允许访问虚拟主机根目录的配置和包含虚拟主机配置文件的配置。
    • 检查主配置文件是否错误,使用命令[root@centos01 ~]# httpd -t
  4. 配置基于 IP 地址虚拟主机

    • 生成网卡配置文件,复制现有网卡配置文件并修改,如[root@centos01 ~]# cp /etc/sysconfig/network-scripts/ifcfg-ens32 /etc/sysconfig/network-scripts/ifcfg-ens32:1[root@centos01 ~]# cp /etc/sysconfig/network-scripts/ifcfg-ens32 /etc/sysconfig/network-scripts/ifcfg-ens32:2,然后编辑新的网卡配置文件设置不同的 IP 地址。
    • 重启网络服务,使用命令[root@centos01 ~]# systemctl restart network
    • 修改虚拟主机配置文件,添加基于不同 IP 地址的虚拟主机配置,指定网站根目录、域名、错误日志和成功日志等。
    • 重启 Apache 网站服务,使用命令[root@centos01 ~]# /etc/init.d/httpd restart
  5. 配置基于端口的虚拟主机

    • 修改 Apache 主配置文件,添加不同端口的监听配置,如[root@centos01 ~]# vim /usr/local/httpd/conf/httpd.conf中设置40 Listen 80默认站点监听 80,41 Listen 8080第一个虚拟主机监听 8080,42 Listen 8181第二个虚拟主机监听 8181。
    • 修改虚拟主机配置文件,添加基于不同端口的虚拟主机配置。
    • 重启服务,使用命令[root@centos01 ~]# /etc/init.d/httpd restart
    • 查看监听端口,使用命令[root@centos01 ~]# netstat -anptu | grep httpd
  6. 配置基于主机头虚拟主机

    • 修改虚拟主机配置文件,添加基于不同域名的虚拟主机配置,指定网站根目录、域名、错误日志和成功日志等。
    • 重启服务,使用命令[root@centos01 ~]# /etc/init.d/httpd restart

通过以上步骤,我们可以实现对 http 服务的访问控制和配置多种类型的虚拟主机,提高网站服务器的安全性和资源利用率。


http://www.kler.cn/a/331621.html

相关文章:

  • 复习打卡大数据篇——Hadoop HDFS 02
  • Pygubu-Designer 使用指南
  • leecode494.目标和
  • 【原生js案例】前端封装ajax请求及node连接 MySQL获取真实数据
  • ONES 功能上新|ONES Copilot、ONES Wiki 新功能一览
  • 【Linux】结构化命令:for命令
  • 加油站智能视频监控预警系统(AI识别烟火打电话抽烟) Python 和 OpenCV 库
  • java版基于Spring Boot + Mybatis在线招投标|评标|竞标|单一采购|询价|邀标|在线开标|招标公告发布|评审专家|招投标采购系统源码
  • 紫光 FPGA固化RAM位置的操作流程
  • Mybatis知识
  • JAVA就业笔记2——第一阶段(2)
  • 【IDE】解决 IDEA-Maven Dependencies 中出现红色波浪线的问题
  • 1000题-计算机网络系统概述
  • 虚拟机 VMware 安装 macOS
  • Dave Cheney: Go语言之禅
  • maven的介绍与安装
  • 偏标记学习+图像分类(论文复现)
  • Unity实战案例全解析:RTS游戏的框选和阵型功能 总结
  • 学习docker第四弹----安装redis集群大厂面试
  • 灰度重心法求取图像重心
  • Updates were rejected because the tip of your current branch is behind 的解决方法
  • (功能测试)熟悉web项目及环境 测试流程
  • SQL Server—T-sql聚合函数详解
  • 如何在银河麒麟高级服务器操作系统V10搭建虚拟机管理器?
  • Django学习笔记八:发布RESTful API
  • 【数据结构与算法】LeetCode:堆和快排