Version 1.22.2

Released: 2004-06-22

Log /~username bandwidth new

Once you've updated to this version of DA, you'll need to make some changes to your httpd.conf file in order for this to take effect:

  1. Disable UserDir by running:
perl -pi -e 's/UserDir public_html/UserDir disabled/' /etc/httpd/conf/httpd.conf
  1. Setup /~username to be accessed only via your server IP or hostname:
  1. edit /etc/httpd/conf/httpd.conf
  2. go to the bottom of the file and make the 2 virtualhosts look like this:


LogFormat "%b "%r"" homedir

The default site for the server:

        AliasMatch ^/~(\[^/\]+)(/.*)* /home/$1/public_html$2
        DocumentRoot /var/www/html
        ServerName localhost
        ScriptAlias /cgi-bin/ /var/www/cgi-bin/

        CustomLog /var/log/httpd/homedir.log homedir

        ServerName localhost
        AliasMatch ^/~(\[^/\]+)(/.*)* /home/$1/public_html$2
        DocumentRoot /var/www/html
        ScriptAlias /cgi-bin/ /var/www/cgi-bin/

        SSLEngine on
        SSLCertificateFile /etc/httpd/conf/ssl.crt/server.crt
        SSLCertificateKeyFile /etc/httpd/conf/ssl.key/server.key

        CustomLog /var/log/httpd/homedir.log homedir


Note that you need to add the Logformat as well. You will only need to insert 5 newlines of code... the logformat, 2 AliasMatch lines and 2 CustomLog lines.

The rest is handled by DA.

To force DA to parse the log and dump the bandwidth into the user's bandwidth.tally files, just run:

echo "action=bandwidth&value=homedir" >>/usr/local/directadmin/data/task.queue

LANG_ENCODING=iso-8859-1 (SKINS) new

Added LANG_ENCODING=iso-8859-1 to the lt_standard.html file. Then in header.html, use:

<meta http-equiv="Content-Type" content="text/html; charset=|LANG_ENCODING|">

Autoforward to https if http is used when SSL is on. new

If ssl is being used with DirectAdmin but the user only uses http in his/her browser, DirectAdmin will send an https Location header to the client, instead of silently dying. It will be forwarded to:


Since no data could be transferred yet, DirectAdmin will not know which domain was used, or which GET requst, so that's all that can be done.

Plugin Feature for plugin designers new

If a plugin file is used, but the user doesn't have access to it, a simple http header can be sent back with the file. If da sees the following code, then it will output the file to the screen instead of download the file. It must be a text file if this is used:

X-DirectAdmin: output

use exactly as shown and include the text as a standard text file. (will be inserted html). The plugin.tar.gz file will not be deleted, but the same file can be downloaded again, and will just overwrite the previous one.

Since there is text in some of the images, set the images in the languages files.

Also, set the link to to be set in the languages files as well.

You can now change the user,reseller and admin site-helper links by setting them in your directadmin.conf file:

The values will be replaced in the skins by the following tokens:


For the images, if you want to use a different images with the language packs, see this link:

files_custom.conf can now be used along side all other files of the same type (files_user.conf, files_reseller.conf and files_admin.conf). What this new type will do is override all of the other files if a skin designer wishes to permanently add an image tag without worrying about skin updates removing it. With that said, skin designers must not include it in their skins package. All tag additions must be made in place by the installer.

One example use of the files_custom.conf file is to add your own header to the directadmin skins and be able to allow updates without destroying your changes. You'd simply add:


to the files_custom.conf file and voila, you'll have header_new.gif being displayed instead. (otherwise known and branding)

action=rewrite&value=named new

rewrite all dns files with the named.db file. (The dns_*.conf files are not used because they are just for new zones.)

echo "action=rewrite&value=named" >> /usr/local/directadmin/data/task.queue

SPF records new

Added support for spf records in dns zone files.

Done by adding:

|DOMAIN|. IN TXT "v=spf1 -all"

to the bottom of the named.db template. You'll need this version to access the |DOMAIN| token.

Count items during tally fixed

Count items such as databases and subdomains during the nightly tally. Currently, it only counts them when added/removed through DA so restore won't change the number.

Workaround: add/remove a test item through DA and the number will be corrected.

Majordomo paths fixed

/usr/lib/sendmail to /usr/sbin/sendmail

/usr/tmp to /tmp

in the /usr/local/directadmin/data/templates/

subdomain bandwidth stats in scientific notation fixed

This has already been fixed, just adding it to the bugs section so we stop getting emails about it 😃

Message all users timesout when selecting too many users fixed

Forked the directadmin process to send the messages in the background.

Set the host for mysql to the correct IP when using a remote MySQL server fixed

Currently, when using a remote mysql server, the "host" value is still set to use "localhost". With this addition, if the connection doesn't go to localhost, the IP of the server will also be added as an access host.

Current workaround: add an access host to allow the connections.

Also show the actual mysql connection value once the database is created. "localhost" is not correct for remote mysql servers.

language file for show_domain.html (SKINS) fixed

It was missed during translation. Already uploaded in the file.

add php tags to php code in the skins fixed

change <? to <?php

DNS read bug fixed

When a dns zone was being read, it wasn't being null terminated, thus causing the string parser to fly off the end of the char[] array, genrating a segfault. Most systems don't seem to be affected because the OS initializes the arrays to null when they are created, but the freebsd 4.x's don't seem to do that, thus exposing the error.

Last Updated: