I took over the maintainence of phpQLAdmin from adfinis GmbH (Bern, Switzerland) at the end of October 2002. During this time I've been very busy adding those stuff that I needed and wanted, and to get something working for a site I'm working on.

phpQLAdmin is an administration interface for (primarily) mail accounts read by QmailLDAP. From the initial development, phpQLAdmin have grown into a fully fledged ISP tool. It now manages Bind9 zones, mailinglists (ezmlm), Apache configuration and much more.

The latest version is now 2.2.7. See the CHANGES file on what's changed. There's a phpQLAdmin mailinglist, and a CVS mailinglist (which show each commit to the CVS).
These mailinglist is for phpQLAdmin version 2.0 and beyond. If you have a problem with the 1.1 version, then you will have to take this up with the original authors. Note though that they ceased development long before I took it over (that was the reason for the takeover!).
Note also that there's no point in discussing wether 1.1 and previos versions worked. The 2.0 version is almost a complete rewrite of the 1.1 version and 2.2 is yet again a rewrite. They share little or no code.

Please note that as of 2012, all of my projects is now on GitHub. The link to the GitHub project site for phpQLAdmin.

Subscribing to any one of these mailinglist is done by sending a empty mail to Exchange the mailinglist part for either phpqladmin or cvs-phpqladmin (as in

A list archive can be found at my list server.

To get the STABLE branch from CVS, execute the following two commands after each other (just press the ENTER key when asked for a password):
        cvs -d login
        cvs -d co -rSTABLE phpQLAdmin
To view the CVS repository through the web browser, turn it to the CVS repository for phpQLAdmin.

The latest stable CVS tag is: REL_2_2_7.

The latest tar ball for the stable release is phpQLAdmin-2.2.7.tar.gz. There is a Bz2 tarball which is slightly smaller as well. Just for the sake of it, I also have a ZIP file for you to download.
For those running Debian GNU/Linux, it is also possible to download the latest package here. With the 'sarge' release, phpqladmin is also in the now-stable release (version 2.2.7-1) maintained by yours truly...

To update your CVS directory, execute:

	cvs -d update -P -r REL_2_2_7
The difference between the STABLE branch (and the current stable release tag REL_2_2_7) is that in STABLE I'll do continuous bug fixing. Any tag that starts with REL_ is exactly that, a release (not necessarily a stable release!) and will have all bug fixes that STABLE have at the time of release.

If you'd like to use the development version of phpQLAdmin, this is possible by checking out the HEAD tag (or the latest development release - CVS tag REL_2_3_7). There is also a 2.3.7 tar ball if you'd rather not use CVS. The latest Debian GNU/Linux package (sarge) is now at version 2.3.7-1 (the developer version is not availible through the Debian GNU/Linux FTP servers - to unstable code). To view the change log for the development branch, follow the link.

To run the development release(s) directly from CVS, execute:

	cvs -d checkout -r REL_DEVEL
Or to update your current CVS version to latest REL_2_3_7:
	cvs -d update -P -C -d -r REL_2_3_7

NOTE: I consider 2.3.7 to be a stable release, but the only reason I have not tagged it 2.4, is that I have a bug that I can't fix. See Debian GNU/Linux bug #376442 for more information. If this is not a problem for you, then by all means use 2.3.7 instead of 2.2.7!

Extreamly short change log:

Version 2.3.7: Almost a complete rewrite of the automount manager. Small fixes in regards of deleting DNS host(s) when we're removing a web server virtual host. Fix the changing of record type (from CNAME to A record for example) in the DNS manager. Support for copying or moving a virtual host from one physical webserver to another. Long standing problem/bug finaly fixed - initial folded branch tree in Opera! Many thanx to Jose Silva @ PT for this fix!
Version 2.3.6 have had (yet even more) major API rewrites and bugfixing. Also support for some additional modules (such as the Password Policy and Accesslog overlays in OpenLDAP >2.3). Most of the changes will result in a lot faster operation - up to tenfold speed improvements - some thanx to support for Memcached.
Version 2.3.5 have had major rewrites regarding web-, mailserver (i.e. QmailLDAP/Controls) and the Automounts information. You'd need to modify your LDAP server (both the schema and database). There's a script named that will take care of this
Version 2.3.5 also have RADIUS support.
WARNING: You must run the upgrade script to be able to use the web-/qlc and/or automounts manager. The script won't modify your database, only create LDIF files for use with ldapadd and ldapdel. Don't forget to change the relevant information in your apache and qmail-ldap files...

Version 2.3.3 have some updated HostACL and sudo access updates. Both bugfixes and additions. Also got some ACI fixes (regarding giving user admin rights). This version also got a 'Global' branch in the QLC frame, which gives the possibility to modify/change ALL QLC objects in one go. Correctly support LDAP URI's in ldapserver QLC setting. Some obscure input prefixes have been translated (using a global variable in include/

As of version 2.3.2, there is now support sudo and HostACL's (using the sudoRole objectclass distributed with Sudo/LDAP). See more in the README. This support was brought to us by Aaron Collins - thanx again mate! Also, the Webserver manager was rewritten fully take advantage of the mod_ldap_cfg module schema.

As of version 2.3.1, there is now support for Samba accounts (using the sambaSamAccount objectclass distributed with Samba). See more in the README. This support was brought to us by Aaron Collins - thanx a milion mate!.

As of version 2.3.0, there is now native support for Kerberos V principal modifications, additions and deletions. Version 2.3.0 also have support for remote ezmlm mailing lists (i.e. ezmlm not running on the same host as phpQLAdmin).
WARNING: Administrations of remote ezmlm lists is more or less done. It can RETREIVE information, but WRITING (in one way or the other) have not been tested AT ALL! Do not use on live lists, they might be totaly fucked if I've missed something!!

As of version 2.1.4, the 'virtual users' management was completely rewritten and in theory it is working. There are some small bugs here and there which concerns the verification of which values is needed or required. Please run the STABLE branch and help me find the bugs...

As of version 2.1, the API have been quite extensivly rewritten and cleaned up to ease further development.

As of version 2.0.18, there's better/correct support for 'virtual users' - a very minimal user object, without the previous requirenments uidNumber, gidNumber and homeDirectory. See the file 'README.virtual' in the distribution for more information.

As of version 2.0.14, there is (much) better support for national characters. This is done by UTF-8 encoding (almost) all strings before saving them to the LDAP database. There will also be (simple) support for having the DNS zone(s) in the LDAP server. This is done through the Bind9 SDB LDAP driver by Stig Venaas.

As of version 2.0.13, there is also a Debian GNU/Linux package generated for each released stable version.

If you want/need an older releases than the currently released, this is also possible.

To view the functionality of phpQLAdmin, please see the demo site. To compare that with the original, have a look at the adfinis phpQLAdmin demo site. This is for there original version (1.1), while mine is the (almost) latest CVS checkout.

There's a bug tracking system as well, so if you find a bug, plese go to the bug tracker and submit one..

This page will show what phpQLAdmin v2.2 looks like nowadays.