services-day01

avatar
作者
筋斗云
阅读量:0

系统&服务管理进阶

web基础应用

HTTP服务基础

独立web主机

web通信基本概念
  • 基于B/S(Brower/Server)架构的网页服务

     - 服务端提供网页  - 浏览器下载并显示网页   
  • Hyper Text Markup Language , 超文本标记语言

  • Hyper Text Transfer Protocol, 超文本传输协议
    在这里插入图片描述

Linux中的Web服务
  1. 软件包: httpd

  2. 系统服务: httpd

  3. 提供的默认配置:

    -Listen: 监听地址:端口(80) -ServerName: 本站点注册的DNS名称(空缺) -DocumentRoot: 网页根目录(/var/www/html) -DirectoryIndex: 起始页/首页文件名(index.html) 
独立web站点的快速部署
  1. 装包(httpd)
  2. 配置(部署首页 index.html)
  3. 起服务(httpd)实现Web功能软件:httpd、Nginx、Tomcat。这里使用httpd软件,由基金会Apache发布的
#虚拟机A:构建基本Web服务 #所有虚拟机设置SELinux运行模式     [root@server ~]# getenforce     Enforcing     [root@server ~]# setenforce 0  #当前设置     [root@server ~]# getenforce     Permissive     [root@server ~]# vim   /etc/selinux/config     SELINUX=permissive      #所有虚拟机设置防火墙(停止防火墙服务)     [root@server ~]# yum  -y  remove  firewalld     [root@server ~]# rpm   -q  firewalld  #虚拟机A:构建基本Web服务     [root@server ~]# yum -y install  httpd        [root@server ~]# rpm  -q  httpd     [root@server ~]# echo NSD Web Server >    /var/www/html/index.html     [root@server ~]# systemctl restart httpd       #重启服务     [root@server ~]# curl  192.168.88.240    #测试访问     NSD  Web  Server  

常见错误:

    [root@server ~]# systemctl  restart httpd     Job for httpd.service failed because the control process exited with error code. See "systemctl status httpd.service" and "journalctl -xe" for details.     [root@server ~]# journalctl   -xe          
DocumentRoot:网页文件根目录(/var/www/html) 
 #虚拟机A     [root@server ~]# mkdir   /var/www/myweb     [root@server ~]# echo wo shi myweb > /var/www/myweb/index.html     [root@server ~]# vim    /etc/httpd/conf/httpd.conf     …….此处省略一万字     DocumentRoot     "/var/www/myweb"     …….此处省略一万字     [root@server ~]# systemctl  restart  httpd    #重启服务     [root@server ~]# curl   192.168.88.240     wo shi myweb 

针对存放网页文件的目录,访问控制规则会自动继承

假设访问规则如此设置: /var/www #允许所有客户端进行访问 /var/www/abc/nsd/cbd #拒绝客户端 造成的结果: /var/www/abc #允许所有客户端进行访问 /var/www/abc/nsd #允许所有客户端进行访问 /var/www/abc/nsd/cbd #拒绝客户端 /var/www/abc/nsd/cbd/xixi #拒绝客户端	 /var/www/abc/nsd/cbd/xixi/haha #拒绝客户端 基于网页文件目录,进行访问控制 当子目录没有规则,默认继承上一级目录规则\ 针对此目录有单独配置,则不继承上一级目录规则 <Directory /> 	Require all denied #拒绝所有人访问= </Directory> <Directory "/var/www"> Require all granted #允许所有人访问 </Directory> 

总结默认情况下网页文件,必须在/var/www目录下,才能允许访问

访问web站点
  • 为浏览器程序提供URL网址
    -Uniform Resource Locator, 统一资源定位器
    -协议名://服务器地址[:端口号]/目录/文件名

访问出现测试页面:

  1. 没有网页文件
  2. 网页文件名称不是index.html
  3. httpd的访问控制规则拒绝
  4. SELinux的没有关闭
#虚拟机A:     [root@server ~]# mkdir    /webroot     [root@server ~]# echo  wo   shi   webroot    >   /webroot/index.html     [root@server ~]# vim    /etc/httpd/conf/httpd.conf     …….此处省略一万字     DocumentRoot    "/webroot"  #修改原有配置     <Directory     "/webroot"> #针对于/webroot路径         Require  all  granted   #允许所有人访问     </Directory>     …….此处省略一万字     [root@server ~]# systemctl    restart   httpd     #重启服务     [root@server ~]# curl   192.168.88.240             wo shi webroot 

虚拟web主机

虚拟主机的含义及类型
  • 虚拟Web主机:由同一台服务器提供多个不同的Web站点
  • 区分方式
    • 基于域名的虚拟主机
    • 基于端口的虚拟主机
    • 基于IP地址的虚拟主机
配置一个虚拟站点
<VirtualHost IP地址:端口> ServerName 此站点域名,比如www.qq.com DocumentRoot 此站点的网页根目录 </VirtualHost> 虚拟机A: [root@server ~]# vim /etc/httpd/conf.d/xixi.conf <VirtualHost *:80> #在所有IP地址监听80 ServerName www.qq.com #网站的域名 DocumentRoot /var/www/qq #网页文件路径 </VirtualHost> <VirtualHost *:80> ServerName www.lol.com DocumentRoot /var/www/lol </VirtualHost> [root@server ~]# mkdir /var/www/qq /var/www/lol [root@server ~]# echo wo shi QQ > /var/www/qq/index.html [root@server ~]# echo wo shi LOL > /var/www/lol/index.html [root@server ~]# systemctl restart httpd 

采用/etc/hosts文件直接解析域名,只为本机解析

[root@server ~]# vim     /etc/hosts   …….此处省略一万字 192.168.88.240   www.qq.com    www.lol.com [root@server ~]# curl   www.qq.com [root@server ~]# curl   www.lol.com 

一旦使用虚拟Web主机功能,所有的网站都必须使用虚拟Web方式进行呈现

#虚拟机A:     [root@server ~]# vim /etc/httpd/conf.d/haha.conf     …….此处省略一万字     <VirtualHost  *:80>        ServerName    www.xixi.com        DocumentRoot    /webroot     </VirtualHost>     [root@server ~]# systemctl restart httpd     [root@server ~]# vim /etc/hosts     …….此处省略一万字     192.168.88.240   www.qq.com   www.lol.com   www.xixi.com     [root@server ~]# curl  http://www.xixi.com 
对默认web站点的影响
  • 一旦启用虚拟Web主机以后
    • 外部的DocumentRoot、ServerName会被忽略
    • 第1个虚拟站点被视为默认站点,若客户机请求的URL不属于任何以至站点,则由第1个站点响应
      在这里插入图片描述

NFS服务基础

NFS共享概述

  • Network File System,网络文件系统

    • 用途:为客户机提供共享使用的文件夹

    • 协议:NFS( 2049)、RPC( 111)

    • 所需软件包:nfs-utils

    • 系统服务:nfs-server
      在这里插入图片描述

#虚拟机A: 服务端     [root@server ~]# rpm  -q  nfs-utils     nfs-utils-1.3.0-0.54.el7.x86_64     [root@server ~]# mkdir   /abc  #创建共享目录     [root@server ~]# echo  haha  >  /abc/h.txt     [root@server ~]# echo  xixi  >  /abc/x.txt     [root@server ~]# ls  /abc/     [root@server ~]# vim   /etc/exports     文件夹路径      客户机地址(权限)       /abc       *(ro)       #允许所有客户端进行只读访问     [root@server ~]# systemctl   restart   nfs-server  #虚拟机B:客户端     [root@pc2 ~]# rpm  -q  nfs-utils     nfs-utils-1.3.0-0.54.el7.x86_64     [root@pc2 ~]# showmount -e 192.168.88.240 #查看对方nfs共享     Export list for 192.168.88.240:     /abc   *     [root@pc2 ~]# mkdir    /mnt/mynfs     [root@pc2 ~]# mount    192.168.88.240:/abc    /mnt/mynfs     [root@pc2 ~]# ls     /mnt/mynfs     [root@pc2 ~]# df -h   /mnt/mynfs   #查看正在挂载的设备信息 

exports配置文件解析

在这里插入图片描述

访问NFS共享文件夹

在这里插入图片描述

触发挂载

autofs触发挂载

什么是触发挂载

在这里插入图片描述

    虚拟机B:     [root@pc2 ~]# yum  -y  install  autofs     [root@pc2 ~]# systemctl restart autofs     [root@pc2 ~]# ls  /misc     [root@pc2 ~]# ls  /misc/cd    

触发挂载实现

•主配置文件 /etc/auto.master

–监控点目录 挂载配置文件的路径

•挂载配置文件,比如 /etc/auto.misc

–触发点子目录 -挂载参数 :设备名

案例:虚拟机B访问/myauto/nsd,光驱设备挂载/ myauto/nsd

    [root@pc2 ~]# yum -y  install   autofs        [root@pc2 ~]# vim   /etc/auto.master     ……此处省略一万字      /myauto      /opt/xixi.txt           ……此处省略一万字     [root@pc2 ~]# vim  /opt/xixi.txt     nsd    -fstype=iso9660     :/dev/cdrom     [root@pc2 ~]# systemctl  restart   autofs     [root@pc2  ~]# ls   /myauto/     [root@pc2 ~]# ls   /myauto/nsd 

autofs配置解析

在这里插入图片描述

触发挂载进阶

autofs&NFS

在这里插入图片描述虚拟机B访问/myauto/test,虚拟机A 的nfs共享/abc挂载到/myauto/test

    [root@pc2 ~]# yum  -y  install   autofs     [root@pc2 ~]# vim   /etc/auto.master     ……此处省略一万字      /myauto      /opt/xixi.txt         ……此处省略一万字                               [root@pc2 ~]# vim   /opt/xixi.txt     nsd    -fstype=iso9660     :/dev/cdrom     test    -fstype=nfs     192.168.88.240:/abc     [root@pc2 ~]# systemctl  restart  autofs     [root@pc2 ~]# ls  /myauto/test 

    广告一刻

    为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!