CentOS中设置Apache服务器网站访问日志[每天的日志]
在阿里云的linux 服务器下Apache的日志默认设置是七天更新一次, 并且所在的目录无法通过FTP浏览器查看, 这样让小白操作起来非常麻烦
可以使用rotatelogs来设置服务器的网站访问日志按天记录,每天生成一个单独的文件, 这样非常方便查看
以我使用的CentOS为例, 首先要检测是否带有rotatelogs.
如果没有安装,则需要我们安装rotatelogs, 运行命令:
yum install rotatelogs
修改apache的配置文件,按天记录网站的访问日志
打开apache的配置文件:vi /etc/httpd/conf/httpd.conf, 编辑:
#ErrorLog logs/error_log #注释掉这行,加上下面这行
ErrorLog "|rotatelogs /home/lao8.org/log/error_log%Y_%m_%d.log 86400 480" #设置好日志保存目录每天生成错误日志
#CustomLog logs/access_log common #注释加上下面这样
CustomLog "|rotatelogs /home/lao8.org/log//access_log%Y_%m_%d.log 86400 480" combined #每天生成访问日志
保存并重启apache (运行命令 service httpd restart)
备注:
1. Rotatelogs的用法:
rotatelogs [ -l ] logfile [ rotationtime [ offset ]] | [ filesizeM ]
选项:
-l 使用本地时间代替GMT时间作为时间基准。注意:在一个改变GMT偏移量(比如夏令时)的环境中使用-l会导致不可预料的结果。
logfile 它加上基准名就是日志文件名。如果logfile中包含"%",则它会被视为用于strftime()的格式字符串;否则它会被自动加上以秒为单位的".nnnnnnnnnn"后缀。这两种格式都表示新的日志开始使用的时间。
rotationtime 日志文件滚动的以秒为单位的间隔时间。
offset 相对于UTC的时差的分钟数。如果省略,则假定为"0"并使用UTC时间。比如,要指定UTC时差为"-5小时"的地区的当地时间,则此参数应为"-300"。
filesizeM 指定以filesizeM文件大小滚动,而不是按照时间或时差滚动。
2. Rotatelogs 失败不生效的原因和解决办法:
rotatelogs 截断日志,进行配置。但是保存之后,服务器restart 始终无法重启成功。
日志文件:
(2)No such file or directory: AH00089: Couldn't start ErrorLog process ' rotatelogs /var/www/html/logs/error/%Y/%m/%d_error.log 86400 480'.
AH00015: Unable to open logs
(2)No such file or directory: AH00089: Couldn't start ErrorLog process ' rotatelogs /var/www/html/logs/error/%Y/%m/%d_error.log 86400 480'.
AH00015: Unable to open logs
Could not open log file '/home/google.com/logs/access/2014/access__20141019.log' (No such file or directory)
AH00106: piped log program '/usr/sbin/rotatelogs /home/google.com/logs/access/%Y/access__%Y%m%d.log 86400 480' failed unexpectedly
Could not open log file '/home/google.com/logs/access/2014/access__20141019.log' (No such file or directory)
AH00106: piped log program '/usr/sbin/rotatelogs /home/google.com/logs/access/%Y/access__%Y%m%d.log 86400 480' failed unexpectedly
Could not open log file '/home/google.com/logs/access/2014/access__20141019.log' (No such file or directory)
AH00106: piped log program '/usr/sbin/rotatelogs /home/google.com/logs/access/%Y/access__%Y%m%d.log 86400 480' failed unexpectedly
Could not open log file '/home/google.com/logs/access/2014/access__20141019.log' (No such file or directory)
AH00106: piped log program '/usr/sbin/rotatelogs /home/google.com/logs/access/%Y/access__%Y%m%d.log 86400 480' failed unexpectedly
解决办法:
1)rotatelogs 不能直接写 rotatelogs,必须写完整地址 /usr/sbin/rotatelogs
2)rotatelogs 无创建目录的权限,所以最好不要给 格式化的地址加文件夹。
正确的写法:
CustomLog "| /usr/sbin/rotatelogs /var/www/html/logs/access_%Y%m%d.log 86400 480 " combined
CentOS中设置Apache服务器网站访问日志[每天的日志]的更多相关文章
- Apache服务器网站访问伪静态内页出现No input file specified.的完美解决方案
原文地址:Apache服务器网站访问伪静态内页出现No input file specified.的完美解决方案 启用REWRITE的伪静态功能的时候,首页可以访问,而访问内页的时候,就提示:&quo ...
- 如何在 CentOS 中设置 NTP 服务器
网络时间协议(NTP)用来同步网络上不同主机的系统时间.你管理的所有主机都可以和一个指定的被称为 NTP 服务器的时间服务器同步它们的时间.而另一方面,一个 NTP 服务器会将它的时间和任意公共 NT ...
- centos中设置apache显示目录列表
apache中显示目录列表 在http.conf中加入如下代码(如有虚拟主机配置,加在虚拟主机配置段内),并把主目录内的index.pho,index.html,index.htm文件删除 复制代码 ...
- 设置apache服务器的访问证书,支持https访问,windows
windows下载安装openssl http://slproweb.com/products/Win32OpenSSL.html windows证书的生成 安装成功后命令行执行 1.私钥,生成的文件 ...
- CentOS中设置Windows共享文件夹
在CentOS中设置Samba可实现和Windows共享文件夹.常见的需求:1)用户能够在Windows机器上通过共享文件夹访问远程Linux服务器上自己的主目录:2)用户能够在Windows机器上访 ...
- 阿里云服务器apache服务器局域网访问公网访问配置
阿里云服务器apache服务器局域网访问公网访问配置 一.总结 一句话总结: 1.再总结-------------------------------------------------------- ...
- 在oracle中通过链接服务器(dblink)访问sql server
在oracle中通过链接服务器(dblink)访问sql server 2013-10-16 一. 工作环境: <1> Oracle数据库版本:Oracle 11g 运行环境 :IB ...
- 在Linux系统中如何设置APACHE服务器里的后台页面只允许某个IP地址访问
补充资料 本网络中使用LINUX服务器,web服务器是由APACHE搭建,IP地址为192.168.1.5,后台页面为/admin/login.jsp . 如何设置后台页面LOGIN.JSP只允许19 ...
- 在centos 7云服务器上搭建Apache服务器并访问到你的网站
网站是指在互联网上根据一定的规则,用HTML等语言制作的网页的集合.网站的目的是用来展示一些信息,如果是个人网站则是为了展示自己的一些想被人知道的东西,例如自己的一些作品,又或者是通过网站来达到盈利的 ...
随机推荐
- laravel he stream or file "..laravel-2019-02-14.log" could not be opened: failed to open stream: Permission denied
错误:The stream or file "/var/www/jianshu/storage/logs/laravel-2019-02-14.log" could not be ...
- 死磕Synchronized底层实现,面试你还怕什么?
关于synchronized的底层实现,网上有很多文章了.但是很多文章要么作者根本没看代码,仅仅是根据网上其他文章总结.照搬而成,难免有些错误:要么很多点都是一笔带过,对于为什么这样实现没有一个说法, ...
- PHP实现简单RPC
1.什么是rpc RPC全称为Remote Procedure Call,翻译过来为“远程过程调用”.目前,主流的平台中都支持各种远程调用技术,以满足分布式系统架构中不同的系统之间的远程通信和相互调用 ...
- Linux中用postfix搭建邮件服务器实战详解
Linux中用postfix搭建邮件服务器实战详解 postfix是Wietse Venema在IBM的GPL协议之下开发的MTA(邮件传输代理)软件.Postfix试图更快.更容易管理.更安全,同时 ...
- Lumen5.7快速实现Captcha图片验证码功能
公司发送短信注册的接口需要防刷,需要一个图形验证码,不考虑收费产品. Lumen5.7+nginx+mysql 使用了这个作者的扩展包,只讲实现.https://github.com/Youngyez ...
- TP5 Request 请求对象【转】
app\index\controller\Index.php <?php namespace app\index\controller; use think\Request; class Ind ...
- Windows下硬盘存储情况可视化工具--WinDirStat
WinDirStat是一款免费的用于Windows下硬盘空间可视化工具. 下载地址:https://windirstat.en.softonic.com/ 界面如图所示: 可以轻易看出硬盘空间使用情况 ...
- python中优雅的杀死线程
上一篇博客中,杀死线程采用的方法是在线程中抛出异常 https://www.cnblogs.com/lucky-heng/p/11986091.html, 这种方法是强制杀死线程,但是如果线程中涉 ...
- CentOS7安装Oracle11gR2
转自E路情人https://www.cnblogs.com/Q1013588888/p/9219128.html 一.安装CentOS-7_x86_64 1.CentOS7:带GUI的服务器(FTP ...
- 一个简单servlet容器
一个简单servlet容器 2.1 javax.servlet.Servlet接口 Servlet编程需要使用javax.servlet和javax.servlet.http两个包下的接口和类 在所有 ...