TạotrangthốngkêwebsitevớiAWStatsvàJAWStats Trong bài viết sau, chúng tôi sẽ giới thiệu với các bạn cách tạothốngkêtrang web vớiAWStatsvàJAWStats trên hệ thống Debian Lenny web server. AWStats là 1 công cụ phân tích, thốngkêtrạng thái trang web miễn phí, mạnh mẽ. Bên cạnh đó, JAWStats có thể hoạt động kết hợp vớiAWStatsvàtạo biểu đồ trạng thái, các thông số chi tiết bao gồm đồ thị, các con số, bảng, hình khối… về lượng khách truy cập tới trang web. Khi biết sử dụng và kết hợp 2 ứng dụng này với nhau, sẽ tốt hơn rất nhiều so với phương pháp dùng Ajax và Flash. Lưu ý sơ bộ Trong bài viết này sử dụng tên miền www.example.com (đi kèm với các alias như example.com, www.example.net, và example.net) và thư mục tàiliệu gốc lưu trữ tại /var/www/www.example.com/web. Cài đặt và cấu hình AWStats Gõ lệnh sau để cài đặt AWStats: aptitude install awstats Các thiết lập của AWStats lưu trữ trong thư mục /etc/awstats/. Đối với mỗi host ảo, chúng ta cần có 1 file thiết lập đặt tên theo chuẩn awstats.<sitename>.conf trong cùng thư mục (ví dụ đối với host www.example.com thì cần có file awstats.www.example.com.conf ). Bên cạnh đó, chúng ta có thể thiết lập file cấu hình /etc/awstats/awstats.conf theo mẫu sau: cd /etc/awstats/ cp awstats.conf awstats.www.example.com.conf vi awstats.www.example.com.conf Và điều chỉnh những thông số sau: [ .] LogFile="/var/log/apache2/access.log" [ .] LogFormat=1 [ .] SiteDomain="www.example.com" [ .] HostAliases="example.com www.example.net example.net" [ .] Tham số LogFile phải chứa đường dẫn tới Apache và truy cập file log của host ảo hoặc toàn bộ file log của Apache (chỉ cần 1 file log cho toàn bộ trang web, AWStats có trang bị các bộ lọc tách tất cả các bản ghi không liên quan tới trang web chính). Mặt khác, nếu bạn có filename thuộc dạng “động”, thì có thể sử dụng biến thay thế, ví dụ như sau: LogFile="/var/log/httpd/access.log_%YYYY-0_%MM-0_%DD-0" Đoạn comment sau giải thích khá rõ ràng và chi tiết các thiết lập của AWStats: "LogFile" contains the web, ftp or mail server log file to analyze. Possible values: A full path, or a relative path from awstats.pl directory. Example: "/var/log/apache/access.log" Example: " /logs/mycombinedlog.log" You can also use tags in this filename if you need a dynamic file name depending on date or time (Replacement is made by AWStats at the beginning of its execution). This is available tags : %YYYY-n is replaced with 4 digits year we were n hours ago %YY-n is replaced with 2 digits year we were n hours ago %MM-n is replaced with 2 digits month we were n hours ago %MO-n is replaced with 3 letters month we were n hours ago %DD-n is replaced with day we were n hours ago %HH-n is replaced with hour we were n hours ago %NS-n is replaced with number of seconds at 00:00 since 1970 %WM-n is replaced with the week number in month (1-5) %Wm-n is replaced with the week number in month (0-4) %WY-n is replaced with the week number in year (01-52) %Wy-n is replaced with the week number in year (00-51) %DW-n is replaced with the day number in week (1-7, 1=sunday) use n=24 if you need (1-7, 1=monday) %Dw-n is replaced with the day number in week (0-6, 0=sunday) use n=24 if you need (0-6, 0=monday) Use 0 for n if you need current year, month, day, hour . Example: "/var/log/access_log.%YYYY-0%MM-0%DD-0.log" Example: "C:/WINNT/system32/LogFiles/W3SVC1/ex%YY-24%MM-24%DD-24.log" You can also use a pipe if log file come from a pipe : Example: "gzip -d </var/log/apache/access.log.gz |" If there are several log files from load balancing servers : Example: "/pathtotools/logresolvemerge.pl *.log |" Có thể bạn đang sử dụng định dạng combined của Apache, đối với trường hợp này các bạn nên sử dụng định dạng LogFormat=1, ví dụ: SiteDomain: chỉ định domain chính của website (ở đây là www.example.com) HostAliases: chỉ định các domain phụ, domain con dùng để truy cập tới trang web (ở đây là example.com, www.example.net, example.net) Tiếp theo, chúng ta sẽ tạo tham số cron định kỳ để chạy AWStats 9 phút 1 lần: crontab -e 9,19,29,39,49,59 * * * * /usr/lib/cgi-bin/awstats.pl -config=www.example.com -update >/dev/null Lưu ý: nếu bạn có file log không cố định, cũng như việc tạo ra file cronolog hoặc vlogger, chúng ta nên tận dụng phút thứ 59 trong công việc định kỳ bên trên, do đó AWStats có thể tiếp tục truy cập dữ liệu log tại thời điểm 23:59 trước khi file log mới được tạo ra từ lúc 0:00, và theo cách này, các bạn chỉ bị mất 1 phút từ 23:59 đến 0:00. Cài đặt và cấu hình JAWStats Truy cập trang web http://www.jawstats.com/download vàtải phiên bản JAWStats mới nhất về máy tính, giải nén vàtải toàn bộ lên website www.example.com qua giao thức FTP. Trong bài viết này, chúng tôi đã tải toàn bộ gói cài đặt JAWStats vào thư mục /var/www/www.example.com/web/jawstats. Sau đó, đổi tên file config.dist.php thành config.php và chỉnh sửa file đó như sau: mv /var/www/www.example.com/web/jawstats/config.dist.php /var/www/www.example.com/web/jawstats/config.php vi /var/www/www.example.com/web/jawstats/config.php <?php // core config parameters $sDefaultLanguage = "en-gb"; $sConfigDefaultView = "thismonth.all"; $bConfigChangeSites = false; $bConfigUpdateSites = false; $sUpdateSiteFilename = "xml_update.php"; // individual site configuration $aConfig["www.example.com"] = array( "statspath" => "/var/lib/awstats/", "updatepath" => "/usr/lib/cgi-bin/", "siteurl" => "http://www.example.com", "sitename" => "My Example.com Web Site", "theme" => "default", "fadespeed" => 250, "password" => "secret", "includes" => "", "language" => "en-gb" ); ?> Nếu muốn loại bỏ đường dẫn change site, chỉ cần thay đổi tham số $bConfigChangeSites thành giá trị false. Hoặc nếu không muốn người sử dụng tự cập nhật trạng thái website thì thay đổi $bConfigUpdateSites thành false. Tiếp tục, với mảng biến $aConfig["site1"] – thay đổi tên theo cú pháp sau ($aConfig["www.example.com"]). Thiết lập giá trị statspath thành /var/lib/awstats/, updatepath thành /usr/lib/cgi-bin/, siteurl thành http://www.example.com, và chỉ định tên website trong giá trị sitename. Giá trị password chỉ thực sự cần thiết nếu bạn thiết lập $bConfigUpdateSites thành true (tính năng này cho phép người dùng tự cập nhật trạng thái qua trình duyệt, họ sẽ phải khai báo mật khẩu). Và, sau khi công việc thường xuyên của AWStats hoạt động lần đầu tiên (sẽ mất khá nhiều thời gian đối vớitrang web nhiều traffic), bạn có thể truy cập bằng đường dẫn http://www.example.com/jawstats: Sau đây là 1 số ảnh chụp màn hình của những trang web sử dụng AWStatsvà JAWStats: Tùy chọn mật khẩu bảo vệ thư mục JAWStats Tiếp theo, chúng ta sẽ tiến hành thiết lập mật khẩu bảo vệ thư mục /var/www/www.example.com/web/jawstats để đảm bảo không ai có quyền truy cập ngoài người quản trị. Để làm việc này, chúng ta phải tạo file .htaccess trong thư mục /var/www/www.example.com/web/jawstats: vi /var/www/www.example.com/web/jawstats/.htaccess AuthType Basic AuthName "Members Only" AuthUserFile /var/www/www.example.com/.htpasswd <limit GET PUT POST> require valid-user </limit> Sau đó, tiếp tục tạo file mật khẩu /var/www/www.example.com/.htpasswd. Nếu muốn truy cập với tên admin, chúng ta sẽ sử dụng lệnh sau: htpasswd -c /var/www/www.example.com/.htpasswd admin Và điền mật khẩu cho tài khoản admin. Vậy là đã hoàn tất. . Tạo trang thống kê website với AWStats và JAWStats Trong bài viết sau, chúng tôi sẽ giới thiệu với các bạn cách tạo thống kê trang web với AWStats và JAWStats. đặt và cấu hình JAWStats Truy cập trang web http://www .jawstats. com/download và tải phiên bản JAWStats mới nhất về máy tính, giải nén và tải toàn bộ lên website