用户认证和域名跳转和配置访问日志

本文介绍了如何在Apache服务器上进行单个文件的用户认证,通过修改配置文件实现HTTP基本认证,并展示了域名跳转的配置方法。此外,讲解了如何利用mod_rewrite模块进行301重定向,确保非www.111.com的URL自动跳转。同时,文章还涉及日志管理和访问日志的过滤,包括如何设置访问日志不记录特定类型文件以及日志的自动切割。最后,讨论了如何通过配置排除jpg文件的访问日志记录。
摘要由CSDN通过智能技术生成

**针对单个文件的用户认证

在这里插入图片描述
修改其配置文件 并取消掉先前Directory在这里插入图片描述

在这里插入图片描述
写入完成以后 不加用户名密码会显示报错401
在这里插入图片描述
这样就完成了一个单个文件的用户认证

域名跳转

关于域名跳转可以理解成为一个域名重定向
例如 111.com跳转到www.111.com 配置如下

<IFModule mod_rewrite.c>   //需要mod_rewrite模块支持 
 RewriteEngine on                  //打开rewirte模块
 RewriteCond %{HTTP_HOST} !^www.111.com$           //定义条件 主机名不是www.111.com 则满足条件
 RewriteRule ^/(.*)$ http://www.111.com/$1 [R=301,L]     //定义规则 满足条件则执行 跳转
</IFModule>

这边设置的条件就是 只有不是以111开头的网址就跳转到www.111.com ,完成配置以后使用/usr/local/apache2.4/bin/apachectl -t 查看是否有报错信息

在这里插入图片描述
因为我们没有定义www.111.com这个目录所以我们先要创建 mkdir -p /usr/local/apache2.4/docs/www.111.com 在该目录下创建了两个文件 一个是index.html (www.111.com) 一个是123.php文件

cat index.html 
www.111.com
cat 123.php 
<?php
echo "www.111.com/123.php";
 ?>

httpd的主配置文件在/usr/localapache2.4/conf/httpd,conf中 把rewrite这个配置文件注释解除
在这里插入图片描述使用/usr/localapache2.4/bin/apachectl -M | grep rewrite 查看是否有该模块

在这里插入图片描述
这边我们做一个测试 看看不是以111开头的网址就跳转到www.111.com
在这里插入图片描述
如果2111.con.cn后面还有一些子网页 他也会跳转到www.111.com下面的子网页中 301为状态码,它称作“永久重定向”(还有一种跳转用的状态码为302,叫作“临时重定向”)
在这里插入图片描述
在httpd的主配置文件中可以看到日志的格式 /usr/localapache2.4/conf/httpd.conf
%h为访问网站的IP;%l为远程登录名,这个字段基本上为“-”;%u为用户名,当使用用户认证时,这个字段为认证的用户名;%t为时间;%r为请求的动作(比如curl -I时就为HEADE);%s为请求的状态码,携程%>s为最后的状态码;%b为传输数据大小;%{Referer}i为referer信息(请求本次地址上一次的地址就为referer);%{User-Agent}i为浏览器标识,
在这里插入图片描述
在虚拟主机中查看发现日志文件存放在了logs/abc.com-access_log中
在这里插入图片描述
当我们使用cat命令查看时 可以发现里面有很多的日志文件 当我们使用curl命令的时候该文件里面就会更新出日志文件
在这里插入图片描述

访问日志不记录指定类型的文件

网站上大多元素是静态文件,如图片、css、js等,这些元素可以配置访问日志不记录
编辑配置文件vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
在这里插入图片描述
首先呢 在/usr/local/apache2.4/docs/www.111.com下创建images目录 准备好的linux.jpg移动到该目录
curl -xlocalhost:80 www.111.com/images/linux.jpg -I (使用该命令之前先SetEnVIF Request_URL “.*.jpgKaTeX parse error: Can't use function '\.' in math mode at position 90: …Request_URL ".*\̲.̲jpg” img解除注释
在这里插入图片描述
然后我们在使用curl -xlocalhost:80 www.111.com/images/linux.jpg -I
在这里插入图片描述
在去查看日志文件发现 日志中已经过滤掉了jpg文件

访问日志切割

日志一直记录总有一天会把内存占满 所有太有必要让他自动切割,并删除老的日志文件
虚拟主机配置如下
在这里插入图片描述
CustomLog “|/usr/local/apache2.4/bin/rotatelogs -l logs/www.111.com-access_%Y%m%d.log 86400” combined env=!img
在这里插入图片描述
这里的86400秒指的的24小时

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值