103 lines
5.8 KiB
HTML
103 lines
5.8 KiB
HTML
<!--startcut ==========================================================-->
|
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
|
<HTML>
|
|
<HEAD>
|
|
<title>TkApache LG #34</title>
|
|
</HEAD>
|
|
<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#A000A0"
|
|
ALINK="#FF0000">
|
|
<!--endcut ============================================================-->
|
|
|
|
<H4>
|
|
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
|
</H4>
|
|
|
|
<P> <HR> <P>
|
|
<!--===================================================================-->
|
|
|
|
<center>
|
|
<H1><font color="maroon">TkApache</font></H1>
|
|
<H4>By <a href="mailto:mike@eunuchs.org">Michael Holve</a></H4>
|
|
</center>
|
|
<P> <HR> <P>
|
|
|
|
I've been using the Apache Web server for several years now, both to serve my own Website as
|
|
well as commercial sites. In all this time, this small, fast server has never failed me. While
|
|
I'm perfectly happy with command line tools being a UNIX freak and all, let's face it - this is
|
|
a Windows mentality world. People like GUI interaction with their programs. This has been a long
|
|
standing argument over the Apache Web server - the lack of a GUI.
|
|
<P>
|
|
There are currently several projects on the Internet to provide such a front-end for Apache.
|
|
Why write another, you ask? Out of the projects that are currently available, most lack an easy
|
|
to use layout, support all of Apache's features in an open, modular way or both. It is my vision
|
|
to create a tool that can run on many platforms with as little fuss on the part of the user as
|
|
possible and have a great growth potential.
|
|
<P>
|
|
Version 1.0 launched the afternoon of October 16th, 1998. Within the first 24 hours, it was
|
|
downloaded 1,036 times and the TkApache Web page had 1,400 visitors. Not staggering numbers, but
|
|
since then it's been downloaded somewhere around 150 times per day. This version was originally
|
|
going to have some additional features but the other developer and I, Lance Dillon, decided to
|
|
concetrate on finishing the core features and doing some quick bug testing to get it released in
|
|
time for ApacheCon in San Francisco that week. That and the Emails to the nature of "where can I
|
|
get it?!" streaming in at a rate of 30 or so a day...
|
|
<P>
|
|
Other neat features include callouts to Netscape to view the HTML documentation (will sport
|
|
context sensitive, internal and browser-independant help in future versions), a setup/install
|
|
window and a tail window. The tail window is like the UNIX "tail -f" command, which allows you
|
|
to watch your log files in real-time. TkApache allows you to monitor your access and error logs.
|
|
<P>
|
|
So where is TkApache headed? Our next goal is version 2.0 with maintenance releases along the
|
|
way to fix bugs as we discover them. There are some lofty goals for this next version, some of
|
|
which can already be seen in the code for the initial version. This is the support of modules.
|
|
We have envisioned an interface that can include user submitted or internally developed modules to
|
|
support the vast number of Apache modules and add-ons like SSL, PHP and mod_perl, among others.
|
|
Also planned is performance graphing of CPU/RAM loads, number of processes, Website visitors, etc.
|
|
and virtual host support. The user interface will evolve along with it to handle the load of
|
|
information that must be dealt with, formerly taking up three rather good sized configuration
|
|
files. I find GUI design to be a lot of fun and a pet peeve of mine. It's got to look good and
|
|
be usable or else it's just in the way.
|
|
<P>
|
|
What makes it tick, and how does all this relate to Perl? TkApache is written entirely in
|
|
a combination of Perl and the Tk toolkit, known as PerlTk. Originally I started with Tcl/Tk and
|
|
Perl, but it was a total hack. While I loved working with the Tk toolkit, I wasn't to familiar
|
|
with, or interested in Tcl. Perl was more my speed, and when I became aware of the PerlTk module,
|
|
it was a perfect match for rapid prototyping. The GUI design is really fun to work on, although
|
|
it can be frustrating sometimes, but it's really quite easy. The whole solution allows all of
|
|
Perl's wonderful text handling to be used in dealing with all this text in the configuration files.
|
|
Weighing in at over 8,000 lines of code - TkApache is very portable (there are some current items
|
|
that make it less than optimal which will be addressed in a maintenance release) and should run on
|
|
Macintosh or Windows, as well as any UNIX platforms without modification. We're trying to keep the
|
|
module count down, only to make it easier for potential users to get up and running, although we do
|
|
currently rely on Data::Dumper and some File::Copy routines (all part of 5.005+).
|
|
<P>
|
|
Do stop by the TkApache Web site and see what you think. If you're familiar with Perl and/or
|
|
Tk and would like to contribute to the project, you're very welcome to. Or, if you'd like, we're
|
|
also happy to receive feedback on it. There's screenshots and documentation available online.
|
|
<P>
|
|
Michael Holve
|
|
mike@eunuchs.org
|
|
<P>
|
|
TkApache Web Site: <A
|
|
HREF="http://eunuchs.org/linux/TkApache/index.html">
|
|
http://eunuchs.org/linux/TkApache/index.html</A>
|
|
|
|
<!--===================================================================-->
|
|
<P> <hr> <P>
|
|
<center><H5>Copyright © 1998, Michael Holve <BR>
|
|
Published in Issue 34 of <i>Linux Gazette</i>, November 1998</H5></center>
|
|
|
|
<!--===================================================================-->
|
|
<P> <hr> <P>
|
|
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
|
ALT="[ TABLE OF CONTENTS ]"></A>
|
|
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
|
ALT="[ FRONT PAGE ]"></A>
|
|
<A HREF="./lisse.html"><IMG SRC="../gx/back2.gif"
|
|
ALT=" Back "></A>
|
|
<A HREF="./lg_backpage34.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
|
<P> <hr> <P>
|
|
<!--startcut ==========================================================-->
|
|
</BODY>
|
|
</HTML>
|
|
<!--endcut ============================================================-->
|