Apache日誌文件默認存放位置:html
/var/log/httpd/
web默認分爲access log和error logapache
實施日誌分割的目的:vim
隨着網站的訪問量增長,默認狀況下Apache的單個日誌文件也會愈來愈大。緩存
日誌文件佔用磁盤空間很大ide
查看相關信息不方便工具
進行日誌分割的方式:優化
使用自帶的rotatelogs分割工具實現(循環讀取日誌文件)網站
第三方工具cronolog分割ui
工具存放位置:
/usr/sbin/
目錄下,安裝http服務後包含其中。
配置格式:
ErrorLog "| rotatelogs命令的絕對路徑 -l 日誌文件路徑/網站名-error_%Y%m%d.log 86400" CustomLog "| rotatelogs命令路徑 -l 日誌文件路徑/網站名-access_%Y%m%d.log 86400" combined
其中,
在雙引號""中的內容,路徑必須爲絕對路徑,不可更改成相對路徑
84600:每次分割日誌文件時間,單位爲秒。(84600s=24h)
具體配置實例:
(1)安裝並啓動服務(此時日誌文件目錄中會出現access、error兩個日誌文件)
[root@localhost ~]# yum install httpd -y [root@localhost logs]# systemctl start httpd
(2)修改配置文件
[root@localhost ~]# cd /etc/httpd/conf [root@localhost conf]# vim httpd.conf 40、41行,開啓IPV4監聽,關閉IPV6監聽 41 Listen 192.168.116.131:80 42 #Listen 80 95行,開啓域名(萬一要有解析呢) 95 ServerName www.kgc.com:80 182行,修改成 182 ErrorLog "| /usr/sbin/rotatelogs -l logs/error_%Y%m%d.log 84600" 217行,修改成 217 CustomLog "| /usr/sbin/rotatelogs -l logs/access_%Y%m%d.log 84600" combined wq保存退出
(3)重啓服務,並關閉防火牆
[root@localhost conf]# systemctl stop httpd [root@localhost conf]# systemctl start httpd [root@localhost conf]# systemctl stop firewalld.service [root@localhost conf]# setenforce 0
(4)使用客戶機進行訪問,驗證是否進行日誌分割
[root@localhost conf]# ls /var/log/httpd/ access_20191023.log access_log error_log //實驗成功!!
工具存放位置:
/usr/sbin/
目錄下,需手動進行安裝。
配置格式:
ErrorLog "| cronolog命令的絕對路徑 -l 日誌文件路徑/網站名-error_%Y%m%d.log" CustomLog "| cronolog命令路徑 -l 日誌文件路徑/網站名-access_%Y%m%d.log" combined
具體配置實例:
(1)安裝http服務以及第三方日誌分割工具
[root@localhost ~]# yum install httpd -y [root@localhost ~]# rpm -ivh cronolog-1.6.2-14.el7.x86_64.rpm 警告:cronolog-1.6.2-14.el7.x86_64.rpm: 頭V3 RSA/SHA256 Signature, 密鑰 ID 352c64e5: NOKEY 準備中... ################################# [100%] 正在升級/安裝... 1:cronolog-1.6.2-14.el7 ################################# [100%]
(2)修改配置文件
[root@localhost ~]# cd /etc/httpd/conf [root@localhost conf]# vim httpd.conf 40、41行,開啓IPV4監聽,關閉IPV6監聽 41 Listen 192.168.116.131:80 42 #Listen 80 95行,開啓域名(萬一要有解析呢) 95 ServerName www.kgc.com:80 182行,修改成 182 ErrorLog "| /usr/sbin/cronolog -l logs/www.kgc.com.error_%Y%m%d.log" 217行,修改成 217 CustomLog "| /usr/sbin/cronolog -l logs/www.kgc.com.access_%Y%m%d.log" combined wq保存退出
(3)重啓服務,並關閉防火牆
[root@localhost conf]# systemctl stop httpd [root@localhost conf]# systemctl start httpd [root@localhost conf]# systemctl stop firewalld.service [root@localhost conf]# setenforce 0
(4)使用客戶機進行訪問,驗證是否進行日誌分割
[ root@localhost httpd]# ls /var/1og/httpd/ www.kgc.com.error_20191023.log www.kgc.com.error.20191024.log [root@localhost httpd]#
是Per語言開發的一款開源日誌分析系統
可用來分析Apache、Samba、 Vsftpd、 IIS等服務 器的訪問日誌
信息結合crond等計劃任務服務,可對日誌內容按期進行分析
安裝DNS、http服務並創建網站
(這個不是主要的,再也不過多贅述,快速帶過。)
[root@localhost ~]# yum install bind httpd -y
創建的網站域名爲:
www.zhy.com
解析的對應IP地址爲:
192.168.116.143
調整http主配置文件中的監聽端口以及域名
[root@localhost ~]# cd /etc/httpd/conf [root@localhost conf]# vim httpd.conf 40、41行,開啓IPV4監聽,關閉IPV6監聽 41 Listen 192.168.116.143:80 42 #Listen 80 95行,開啓域名 95 ServerName www.zhy.com:80
[root@localhost ~]# tar xzvf awstats-7.6.tar.gz //解壓AWStats軟件包 awstats-7.6/ awstats-7.6/tools/ awstats-7.6/tools/awstats_buildstaticpages.pl awstats-7.6/tools/awstats_updateall.pl ......省略 [root@localhost ~]# mv awstats-7.6 /usr/local/awstats //安裝在/usr/local/目錄下 [root@localhost ~]# cd /usr/local/awstats/tools/ //進入軟件包的工具目錄中 [root@localhost tools]# ./awstats_configure.pl //執行配置工具 Enter full config file path of your Web server. Example: /etc/httpd/httpd.conf Example: /usr/local/apache2/conf/httpd.conf Example: c:\Program files\apache group\apache\conf\httpd.conf Config file path ('none' to skip web server setup): > /etc/httpd/conf/httpd.conf //第一處填寫http服務配置文件地址 ......省略 Do you want me to build a new AWStats config/profile file (required if first install) [y/N] ? y //第二處爲是否使用新的分析系統 ......省略 Your web site, virtual server or profile name: > www.zhy.com //第三處爲你配置網站的域名 ......省略 In which directory do you plan to store your config file(s) ? Default: /etc/awstats Directory path to store config file(s) (Enter for default): > //第四處爲分析系統配置文件位置,使用默認便可 後面都是默認回車
最後會獲得一個url地址:http://www.zhy.com/awstats/awstats.pl?config=www.zhy.com
,這個就是分析系統所在的網頁,不過此時還不能使用。
[root@localhost tools]# cd /etc/awstats/ //分析系統配置文件位置 [root@localhost awstats]# vim awstats.www.zhy.com.conf 50行,填寫日誌文件地址,改成 50 LogFile="/var/log/httpd/access_log" 220行,查看 220 DirData="/var/lib/awstats" #分析系統站點,需手動建立(不建會報錯) [root@localhost awstats]# mkdir /var/lib/awstats //建立站點 [root@localhost awstats]# vim /etc/httpd/conf/httpd.conf //修改http服務配置文件 按G定位末行,按照下面進行修改 <Directory "/usr/local/awstats/wwwroot"> Options None AllowOverride None # Order allow,deny //註釋掉 # Allow from all //註釋掉 Require all granted //手動添加,容許全部用戶訪問 </Directory> [root@localhost awstats]# systemctl restart httpd
此時,日誌分析系統所在網頁已經配置完畢,不過很遺憾此時的網頁徹底就是空白的,沒有任何數據,因此須要咱們手動對網頁進行重啓。
[root@localhost var]# cd /usr/local/awstats/tools [root@localhost tools]# ./awstats_updateall.pl now Running '"/usr/local/awstats/wwwroot/cgi-bin/awstats.pl" -update -config=www.zhy.com -configdir="/etc/awstats"' to update config www.zhy.com .......省略
作完此步驟,系統網頁就會進行數據的刷新,但每想要進行刷新就須要對awstats_updateall.pl
進行執行。所以,想要一勞永逸,定時進行刷新,就須要crontab
。
[root@localhost tools]# crontab -e 添加 */3 * * * * ./awstats_updateall.pl now #每隔3分鐘,執行刷新命令 wq保存退出 [root@localhost tools]# systemctl start crond [root@localhost tools]# systemctl enable crond //啓動並設置開機自啓
目前想要進入日誌分析系統中,就須要輸入http://www.zhy.com/awstats/awstats.pl?config=www.zhy.com
這段超長的url,想要簡化就須要在網站中新建一個專門指向的網頁進行簡化。
[root@localhost tools]# cd /var/www/html/ [root@localhost html]# vim houtai.html //新建網頁 添加 <html> <head> <meta http-equiv=refresh content="0;url=http://www.zhy.com/awstats/awstats.pl? config=www.zhy.com"> </head> <body></body> </html> #專門指向日誌分析系統所在網頁 wq保存退出
只須要在地址欄輸入www.zhy.com/houtai.html
便可進入日誌文件系統中。