apache

Qmailadmin with Apache

Configuring Qmailadmin to work with the Apache webserver

Create the directories to hold the webmail and Qmailadmin related web files:

mkdir -p /var/websites/mail/htdocs
mkdir -p /var/websites/mail/cgi-bin
mkdir -p /var/websites/mail/logs

Assuming you are using Apache, installed as per this site's install guide:

  • Without ezmlm:

    cd /extra/src/qmailadmin-1.2.12
    ./configure \
    --enable-cgibindir=/var/websites/mail/cgi-bin \
    --enable-htmldir=/var/websites/mail/htdocs \

Web Stats

Study the traffic to your website with a web stats analysis program.

Two popular Open Source packages for analysing web server log files are Awstats and Webalizer.

There is a detailed comparison at the Awstats website.

Webserver configuration

Apache and Lighttpd instructions for configuring Drupal virtual hosts.

Apache Virtual Host Configuration
Enable the virtual host config file in /usr/local/apache2/conf/httpd.conf by uncommenting it:

# Virtual hosts
Include conf/extra/httpd-vhosts.conf

Edit /usr/local/apache2/conf/extra/httpd-vhosts.conf and add an entry for your new Drupal install:

ServerName www.domain.com
#ServerAlias *.domain.com
DocumentRoot /var/websites/projectname/drupal-5.10

Options Indexes FollowSymLinks
AllowOverride All

Apache config

Configuration instructions for serving Trac with Apache.

TracModMython wiki page with detailed Apache instructions.

Prerequisites
Apache requires mod_python to be installed in order to run Trac.

Simple Configuration
Edit /usr/local/apache2/conf/httpd.conf and add the following to instruct Apache to redirect any URLs starting with "/trac/" to Trac:

SetHandler mod_python
PythonInterpreter main_interpreter

mod_python

Mod_python is an Apache module that embeds the Python interpreter within the server. With mod_python you can write web-based applications in Python that will run many times faster than traditional CGI

Installation
Download the latest version of mod_python (3.3.1 at time of writing). Apache 2.2.11 had issues with mod_python. Downloading the latest from Apache's svn repo worked better...

WebDAV

Web-based Distributed Authoring and Versioning, or WebDAV, is a set of extensions to the Hypertext Transfer Protocol (HTTP) which allows users to collaboratively edit and manage files on remote World Wide Web servers.

Tutorial - http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/html_single/Apache-WebDAV-LDAP-HOWTO.html#AEN228

Apache needs to be configured and compiled with the --enable-dav option.

Uncomment the WebDAV config file in /usr/local/apache2/conf/httpd.conf:

# Include conf/extra/httpd-dav.conf

Apache

in

Installation instructions for using PHP with the Apache web server.

Compiling and Installing
Configure PHP with the options you want. In this case, we'll be adding Apache and MySQL support.

./configure \
--enable-mbstring \
--with-gd \
--with-gettext \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-mysql=/usr/local/mysql

If you want to include LDAP support, use:
./configure \
--enable-mbstring \
--with-gd \
--with-gettext \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-mysql=/usr/local/mysql \
--with-ldap

If it configures correctly, make and install the binaries:

SSL Encryption

in

Secure communication with your web server by using self-signed SSL certificates.

Instructions adapted from http://www.tc.umn.edu/~brams006/selfsign.html.

Rather than paying for an SSL certificate from a signing authority, we'll use a self-signed certificate to provide encryption in Apache. The client's web browser will prompt them to whether the certificate should be accepted or not - if that is going to be a problem, then you'll need to get a certificate from a recognized signing authority.

Create a directory, readable only by root to hold our working files:

mkdir ~/cert
chmod 600 ~/cert
cd ~/cert

Syndicate content