Categories: 其他

在 CentOS 6.2 64位 下配置awstats过程中遇见的问题的解决!

根据两个网址:

http://www.centospub.com/make/awstats.html

使用AWStats分析Nginx和Apache日志

来进行配置的,版本是选用的awstats-7.2.tar.gz,最新版本的。需要翻墙才能够下载到的。

在阿里云CentOS 6.2 64位上配置的哈。

配置完毕之后,打开网址http://*.*.*.*/awstats/awstats.pl?config=www.***.com,

提示403,没有权限访问。

在网上搜索说是要将/usr/local/awstats/的权限设置为755甚至777,我设置了,发现照样是打不开的。后来发现一篇帖子,将

<Directory “/usr/local/awstats/wwwroot”>
Options Includes ExecCGI FollowSymlinks
AllowOverride None
Order allow,deny
Allow from all
Require all granted(主要是增加了这一行)
</Directory>

终于未提示403错误了,但是打开网址,却是显示的是源代码的,不得不继续分析下去:

awstats.pl 显示源代码,未显示统计表的。

在httpd.conf中有一行:

#LoadModule cgid_module modules/mod_cgid.so,我修改为

LoadModule cgid_module modules/mod_cgid.so,却出现apache无法启动的问题,最后在modules目录中查看了一下,原因是无此mod_cgid.so文件的缘故,却发现有另一个文件mod_cgi.so,就便尝试一下了,插入一行:

LoadModule cgi_module modules/mod_cgi.so,果然可以打开了,但是显示的却是空白的,提示未更新,唉,有一些小郁闷的。

继续分析,最后我将logs/access_log等几个日志文件的内容全部清空,因为在执行

/root/awstats.sh的时候,提示access_log格式有问题,并且好像还有权限的提示,

清空之后一段时间,当aaess_log等日志文件中有内容的时候,重新运行此命令,终于http://*.*.*.*/awstats/awstats.pl?config=www.***.com有内容了的。唉,基本配置完毕了,还需要配置一下通过用户名及密码访问的,这样感觉更安全一些的。

httpd.conf中的配置

#
# Directives to allow use of AWStats as a CGI
#
Alias /awstatsclasses “/usr/local/awstats/wwwroot/classes/”
Alias /awstatscss “/usr/local/awstats/wwwroot/css/”
Alias /awstatsicons “/usr/local/awstats/wwwroot/icon/”
ScriptAlias /awstats/ “/usr/local/awstats/wwwroot/cgi-bin/”

#
# This is to permit URL access to scripts/files in AWStats directory.
#
<Directory “/usr/local/awstats/wwwroot”>
Options Includes ExecCGI FollowSymlinks
AllowOverride None
Order allow,deny
Allow from all
AuthType Basic
AuthName “awstats access”
AuthUserFile /usr/local/awstats/htpasswd
Require valid-user
</Directory>

 

/usr/local/apache/bin/htpasswd -c /usr/local/awstats/htpasswd username(为你设置访问awstats的用户名),然后输入两次密码,现在就可以了的。花费了一天半的时间,终于配置完毕了,嘿嘿!

永夜