Documentation
ACCESS
PORTAL ANALYZER: V1.0
Portal Analyzer is a convenient
solution to tracking your websites popularity. Its a lot like having an invisible
hit counter on every page. Portal Analyzer produces daily reports telling you
exactly how many unique visitors you received and which page they entered by.
This way you can tell not only how many people visit your site but which pages
attract the most visitors. Works behind the scenes by crontab or can be exectuted
from the browser to provide the easy to follow reports. Results are tabulated
by most popular to least popular entry page. Unlike access counters which are
frequently not accurate this works off of your server logs to provide absolute
accuracy in counting.
System
Requirements
- Unix,
NT, Linux
- Designed
for Apache Style Logs
- Perl
5
- Ability to
run crontab recommended
- Ability
to reset logfiles desired
Preliminaries
- Determine the path to PERL 5 on
your web server host. Note that some web hosting companies run both PERL
4 and PERL 5. Make ABSOLUTELY sure you are not setting this up under PERL
4. Ask your administrator if you are not sure.
- Download
the tarfile for this program and save it to your desktop.
- Unpack the tar archive on your desktop
using a program that unpacks UNIX TAR ARCHIVES. If you don't have such a program
then download WINZIP FREE from SHAREWARE.COM.
- After
you have unpacked the TAR archive you will have a collection of folders and files
on your desktop. Now you have to do some basic editing of each of these
files (or at least some of them). Use a text editor such as wordpad, notepad,
BBEdit, simpletext, or teachtext to edit the files. These are NOT WORD PROCESSOR
DOCUMENTS they are just simple TEXT files so don't save them as word processor
documents or save them with extentions such as .txt or they will NOT WORK.
Note that there may be a some files inside of folders which are "blank".
This is normal.
Preparing
the CGI scripts
Define
Path To PERL 5
The
first step is to open up each and every file that has a .cgi extention and edit
line number one of each script. Each of the cgi scripts is written in perl
5. For your scripts to run they must know where perl 5 is installed on your web
server. The path to perl 5 is defined to a cgi script in the first line of the
file. In each of the cgi scripts the first line of code looks something like this:
#!/usr/bin/perl
If
the path to perl 5 on your web server is different from /usr/bin/perl you must
edit the first line of each cgi script to reflect the correct path. If the path
to perl 5 is the same no changes are necessary. If you do not know the path to
perl 5 ask the webmaster or system administrator at your server site.
Configure
the .cgi files
portal.cgi
(realtime operation)
There
are two variable paths to edit inside of portal.cgi. portal.cgi is what
you will use to generate your results if you are not running this by crontab.
$logfile = "/path/to/your/logfile";
This is the absolute path to your server log
file
$rooturl
= "http://www.yourdomain.com";
This
is the url to your index page
portal.cgi (crontab operation)
First you need to rename this file
to portal.cgi. There are two variable paths to edit inside of portal.cgi.
portal.cgi is what you will use to generate your results if you are not
running this by crontab.
$logfile
= "/path/to/your/logfile";
This is the absolute path to your server log file
$rooturl
= "http://www.yourdomain.com";
This is the url to your index page
$results
= "/path/to/html/portal/index.html";
This
is the path to the results file that will be created when crontab executes portal.cgi
Notes
for running in realtime
Set
the permission of portal.cgi to 755. Your results can be obtained by simply
calling the url of the script. http://www.yourdomain.com/cgi-bin/portal.cgi.
Note that if you have large log files you will be waiting awhile. If it
takes over 400 seconds your browser may time out. Its really better to run
this by crontab that way the results are created everyday for you and you dont
have to wait for anything.
Notes
for running via crontab
Crontab
is just a file that runs on your server which acts like an alarm clock.
You add tasks to the crontab file and when the "alarm" goes off the
task is completed. There is alot of junk to learn about editing crontab
files which you will have to consult your unix book or ask your system admin about
for your specific server. I have enclosed an example crontab file for you
to look at which executes portal.cgi every night at midnight. You can set
it to run once per minute or once per year for that matter.
If
you are running this by crontab you will have to chmod 777 the directory that
your results will be created inside of ($results). You also have to chmod
755 portal.cgi.