5月29日任务

本文介绍如何在Apache服务器中配置用户认证及特定目录的访问控制,并详细讲解域名跳转及访问日志的记录方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


11.18 Apache用户认证

为了增加安全性,可以对特定的页面使用用户认证

一.对用户进行认证

1.修改配置文件
#vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf

把123.com那个虚拟主机编辑成如下内容
DocumentRoot "/data/wwwroot/111.com"
    ServerName 111.com
    ServerAlias www.example.com
    <Directory /data/wwwroot/111.com>
       AllowOverride AuthConfig
       AuthName "111.com user auth"
       AuthType Basic
       AuthUserFile /data/.htpasswd
       require valid-user
    </Directory>
    ErrorLog "logs/111.com-error_log"
    CustomLog "logs/111.com-access_log" common

2.创建密码文件

#/usr/local/apache2.4/bin/htpasswd  -c -m /data/.htpasswd  aming  //-c创建密码文件(再次增加新用户就不用-c了) -m以md5进行加密



3.重新加载配置 -t, graceful


4.访问

#curl -x127.0.0.1:80  111.com


401代码说明你访问的页面需要认证


5.输入用户名密码



curl也有选项-u来输入用户名密码

# curl -x127.0.0.1:80  -uaming:112358 111.com   //状态码200,表示正常



二.对特定的目录或文件进行认证

1.修改配置文件

#vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf   //把之前的注释掉,使用filesmatch


检查语法,重新加载

# /usr/local/apache2.4/bin/apachectl -t

# /usr/local/apache2.4/bin/apachectl graceful


2.编辑一下123.php

#vim /data/wwwroot/111.com/123.php


3.访问

# curl -x127.0.0.1:80   111.com   //可以正常访问111.com

#curl -x127.0.0.1:80   111.com/123.php  //访问123.php就401了

 # curl -x127.0.0.1:80 -uaming:112358  111.com/123.php  //指定用户名密码就可以正常访问123.php了



11.19/11.20 域名跳转

域名跳转,简单来说就是访问某一网址时,跳转到另一网址
比如我们访问www.lishiming.net会自动跳转到http://ask.apelearn.com/


需求:把123.com域名跳转到www.123.com

具体配置过程:

1.编辑配置文件

#vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf

//下面时ppt的截图


R=301是永久重新指向新网址  还有302是临时指向

2.检查语法,重新加载

# /usr/local/apache2.4/bin/apachectl -t

# /usr/local/apache2.4/bin/apachectl graceful

3.查看rewrite模块是否加载,若无该模块,编辑配置文件httpd.conf,取消rewrite module前面的#

# /usr/local/apache2.4/bin/apachectl -M |grep -i rewrite  //查看是否加载

若没有查询到就去下面的文件进行配置

# vim /usr/local/apache2.4/conf/httpd.conf   //去掉#

下面就可以查询到了


4.检查语法重新加载

# /usr/local/apache2.4/bin/apachectl -t

# /usr/local/apache2.4/bin/apachectl graceful


5.访问2111.com.cn

# curl -x127.0.0.1:80 2111.com.cn -I



11.21 Apache访问日志

访问日志记录用户的每一个请求

看一下日志信息,日志目录

/usr/local/apache2.4/logs/

# cat /usr/local/apache2.4/logs/111.com-access_log


关于log的配置信息

# vim /usr/local/apache2.4/conf/httpd.conf  //搜索LogFormat,这里是格式信息


User-Agent是用户代理,比如浏览器/curl

Referer是记录相关的网址,记录你是从哪里访问来的


而采用common或者combined在这里设置

#vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf   //这里改为combined


重新加载,在运行几次curl再来查看日志

#tail /usr/local/apache2.4/logs/111.com-access_log





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值