• Linux命令学习—Apache 服务器(下)


    1.7、访问控制、认证授权的综合指令

    1.7.1、两种综合情况

    1、满足一种条件即可访问

    Satisfy any

    或者满足访问控制的条件,或者满足认证授权的条件,就可以访问指定页面、目录

    2、必须同时满足 2 个条件才能访问

    Satisfy all
    

    必须同时满足访问控制和认证授权的条件,才可以访问指定页面、目录

    1.7.2、在主文件中配置访问控制和认证授权指令

    1. <Directory /var/www/html/redhat>
    2. Options Indexes
    3. Order allow,deny
    4. Deny from all
    5. Allow from 200.200.200.200
    6. AuthName “rz”
    7. AuthType Basic
    8. AuthUserFile file2
    9. Require valid-user
    10. Satisfy all
    11. </Directory>

    1.7.3、生成认证授权文件,同时添加用户

    htdigest -c /etc/httpd/认证文件 认证名 用户名

    1.7.4、更改认证文件的属主和属组为 apache

    chown apache.apache /etc/httpd/file2

    1.7.5、重启服务并测试

    1.8、分割指令

    1、Include 目录/文件名.conf

           apache 启动时,同时加载 Include 指令指定的目录下的以.conf 结尾的文件,可以减少 apache 的主配置文 件的容量

    2、.htaccess 目录下的隐藏文件

          可以减少 apache 服务的启动

    1.8.1、include

    1. 在主配置文件的第 209
    2. Include conf.d/*.conf
    3. 在指定目录中生成文件并发布
    4. /etc/httpd/conf.d/
    5. 然后测试

    1.9、htaccess

    1.9.1、在主配置文件中发布目录,添加使用.htaccess 的指令

    1. 增加一行
    2. Allowoverride All

    1.9.2、在指定目录中生成.htaccess 文件,并添加指令

    在发布目录/var/www/html/redhat5 下生成.htaccess 文件

    1.9.3、重新启动 apache 服务测试

    1.10、虚拟主机

    1.10.1、虚拟主机常用命令

    1、

    用于封装一组仅作用于特定虚拟主机的指令。

    2、NameVirtualHost

    指定一个基于域名的虚拟主机将使用哪个 IP 地址来接受请求。

    3、ServerName

    设置了服务器用于辨识自己的主机名和端口号。

    1.10.2、配置基于端口的虚拟主机

    1、编辑主配置文件,添加虚拟主机指令

    1. Listen 1234
    2. Listen 2345
    3. <VirtualHost 200.200.200.1:1234>
    4. DocumentRoot /vdir/1234
    5. </VirtualHost>
    6. <VirtualHost 200.200.200.1:2345>
    7. DocumentRoot /vdir/2345
    8. </VirtualHost>

    2、建立虚拟主机的根文档目录,生成测试页

    1. mkdir -p /vdir/1234
    2. mkdir /vdir/2345
    3. echo “这是端口为 1234 的主页!”>/vdir/1234/index.html
    4. echo “这是端口为 2345 的主页!”>/vdir/2345/index.html

    3、重新启动服务并测试

    1.11、配置基于 IP 的虚拟主机

    1、添加网卡(虚拟网卡或真实网卡)

    2、编辑主配置文件,添加虚拟主机指令

    1. <VirtualHost 200.200.200.1>
    2. DocumentRoot /vdir/1
    3. </VirtualHost>
    4. <VirtualHost 200.200.200.2>
    5. DocumentRoot /vdir/2
    6. </VirtualHost>

    3、建立虚拟主机的根文档目录,生成测试页

    1. mkdir /vdir/1
    2. mkdir /vdir/2
    3. echo “这是端口为 1 的主页!”>/vdir/1/index.html
    4. echo “这是端口为 2 的主页!”>/vdir/2/index.html

    4、重新启动服务并测试

    1.12、配置基于域名的虚拟主机

    配置基于域名的虚拟主机必须需要 DNS 的支持

    1、配置 DNS

    2、在主配置文件中,添加虚拟主机指令

    1. NameVirtualHost 200.200.200.1
    2. <VirtualHost 200.200.200.1>
    3. ServerName www.huayu.com
    4. DocumentRoot /vdir/huayu
    5. </VirtualHost>
    6. <VirtualHost 200.200.200.1>
    7. ServerName www.eduask.com
    8. DocumentRoot /vdir/eduask
    9. </VirtualHost>
    10. <VirtualHost 200.200.200.1>
    11. ServerName www.baidu.com
    12. DocumentRoot /vdir/baidu
    13. </VirtualHost>

    3、建立虚拟主机的根文档目录,生成测试页

    1. mkdir /vdir/huayu
    2. mkdir /vdir/eduask
    3. mkdir /vdir/baidu
    4. echo “这是端口为 huayu 的主页!”>/vdir/huayu/index.html
    5. echo “这是端口为 eduask 的主页!”>/vdir/eduask/index.html
    6. echo “这是端口为 baidu 的主页!”>/vdir/baidu/index.html

    4、重新启动服务并测试

    1.13、配置后台更新-WebDav

    1、发布目录

    2、在主配置文件中添加认证授权指令同时添加 Dav 指令

    1. <Directory /var/www/html/redhat6>
    2. Options Indexes
    3. Dav on
    4. AuthName “dav”
    5. AuthType Basic
    6. AuthUserFile file3
    7. <LimitExcept GET OPTIONS>
    8. Require valid-user
    9. </LimitExcept>
    10. </Directory>

    3、配置认证授权的相关文件

    生成认证授权文件,并添加用户

    #htpasswd -c /etc/httpd/认证文件 用户名

    更改认证授权文件的属主和属组为 apache

    #chown apache.apache /etc/httpd/认证文件

    4、重启服务测试

    5、在服务器端给更新目录添加写的权限

    chmod o+w /var/www/html/redhat6
  • 相关阅读:
    引擎开发日志:场景编辑器开发难题
    身边的那些信审人员都去哪了?
    基于Levy飞行策略的改进樽海鞘群算法-附代码
    K8s Docker实践二
    IDEA2022用maven创建的Servlet项目
    第四次作业
    leetcode算法题--把数组排成最小的数
    MySQL的用户管理
    数据库Communications link failure
    windows 下载安装 mysql
  • 原文地址:https://blog.csdn.net/qq_61861243/article/details/137934691