当前位置: 首页 > 图文教程 > 服务器 > Linux服务器 > Linux服务器:关于Apache配置和日志

Linux服务器
linux下用cron定时执行任务的方法
.htaccess绑定域名到子目录的方法
linux apache下虚拟主机配置方法
apache 局域网访问配置方案
linux Apache服务器系统安全设置与优化
linux中mac地址绑定方法
linux托盘不断闪烁之解决方法
Apache配置 虚拟转向实例
Apache No space left on device的解决办法
Apache rewrite的重写相关的参数说明
LINUX入门级常用命令20条整理
Ubuntu设置开机自动挂载所有格式硬盘分区
5个可能被你忽略的Linux安全设置方法
学习Apache的mod rewrite、access写法
改版时保留原链接,创建新的URL的方法
rsync中文手册之使用rsync实现网站镜像和备份linux
rsync 数据同步使用详解
linux URL的301重定向代码分析
eclipse3.2.2 + MyEclipse5.5 + Tomcat5.5.27 配置数据库连接池
Apache服务器二级域名的完美实现

Linux服务器:关于Apache配置和日志


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-18   浏览: 75 ::
收藏到网摘: n/a

1、设置环境变量

在apache里面,你可以用正则来判断很多变量,然后设定另外一个变量以便后面的配置使用

比如你要判断用户是否访问某个文件夹,然后设定一个变量记录一下:

SetEnvIfNoCaseRequest_URI"^\/aslibra"ISSTART=1

SetEnvIfNoCase是指不区分大小写

Request_URI匹配一下"^\/aslibra"

如果是的话,那ISSTART=1,否则就不是1

另外,不记录图片的日志可以是找一下文件路径,然后设定变量供后面使用:

SetEnvNOFILES1

CustomLoglogs/access_logcombinedenv=!NOFILES

2、处理盗链

处理盗链一般是在referrer上做判断,见下面这个例子:

SetEnvIfNoCaseReferer"^http://www\.aslibra\.com/"local_ref=1

OrderAllow,Deny

Allowfromenv=local_ref

Allowfrom127.0.0.1

上面是判断来源是上面域名,然后设定为允许访问

SetEnvIfNoCaseReferer"^http://notpermit\.aslibra\.com/"aaa

OrderAllow,Deny

Allowfromall

Denyfromenv=aaa

上面是判断来源,然后不允许该域名

3、日志分割

日志分割可以使用cronolog来处理

安装就比较容易了,跟一般软件一样安装

定义格式:

LogFormat"%h%l%u%t\"%r\"%>s%b\"%{Referer}i\"\"%{User-Agent}i\""combined

LogFormat"%h%l%u%t\"%r\"%>s%b"common

LogFormat"%{Referer}i->%U"referer

LogFormat"%{User-agent}i"agent

LogFormat"%h%{%T}t\"%r\"%{cookiename}C"record

上面是定义日志格式,你可以定义很多日志格式,以便后面的记录日志使用

比如普通的是combined,有一般要采集的内容,如果要采集cookie(%{cookiename}C)和自定义时间格式(%{%T}t),可以使用上面类似record的写法

CustomLog"|/Data/apps/cronolog/sbin/cronolog/Data/weblog/%Y/%m/%d/www.aslibra.com.%m%d%H"record

CustomLog"|/Data/apps/cronolog/sbin/cronolog/Data/weblog/%Y/%m/%d/aslibra.com.%m%d%H"combined

以上的例子就是调用cronolog存储日志,后面的参数是自己定义的日志格式

当然,你还可以自定义记录很多条件的日志,比如仅仅要记录/aslibra开始的请求:

SetEnvIfNoCaseRequest_URI"^\/aslibra"ISSTART=1

CustomLog"|/Data/apps/cronolog/sbin/cronolog/Data/weblog/%Y/%m/%d/aslibra.com.%m%d%H"recordenv=ISSTART

可以几个CustomLog一起记录的,以此类推就好了。