Latest Web Server Configuration

Slackware 11.0

Install Slackware 11.0.  Do not install X Windows.
Set 'alsamixer' and 'alsactl store'.
Turn off the PC Speaker with 'setterm -blength 0'.  Add this to rc.local.
Run 'updatedb'.
Change the timeout in /etc/lilo.conf to 30.
Run 'pkgtool'.  Remove apache, mod_ssl, mysql, openssl, perl, php, vim.
Download source code to /usr/local/src.
Add the following to /etc/profile: export LC_ALL=en_US.utf8

Current Sources:
httpd-2.2.6.tar.gz
mod_ssl-2.8.30
mysql-5.0.51.tar.gz
Perl 5.8.8 (stable.tar.gz)
php-5.2.5.tar.gz
mod_perl 2.0.3 (mod_perl-2.0.current.tar.gz)
vim-7.1.tar.bz2

MySQL

Follow the MySQL instructions here: http://lamphowto.com/lampssl.html

Perl

Install Perl following the INSTALL file, using 'Configure -des'.
Configure CPAN:
  - auto-configure
  - install Bundle::CPAN
  - o conf prerequisites_policy follow
  - o conf commit
  - install LWP
  - install Test::Pod
  - install CGI
  - install DBI
  - install DateTime

Apache

Configure Apache:
  ./configure --prefix=/usr/local/apache --enable-proxy=shared --with-mpm=prefork

mod_perl

Configure mod_perl:
  perl Makefile.PL MP_APXS=/usr/local/apache/bin/apxs

Add the following to httpd.conf:
  LoadModule perl_module modules/mod_perl.so

Mason

CPAN:
  - install Apache2::Build
  - force install HTML::Mason  (due to the mod_perl dependency)

Add the following to httpd.conf:

PerlModule HTML::Mason::ApacheHandler

 SetHandler perl-script
 PerlHandler HTML::Mason::ApacheHandler


Create a Mason data directory:

mkdir /usr/local/apache/mason
chown daemon mason
chgrp daemon mason
chmod 755 mason

PHP

Configure PHP:
  ./configure --with-apxs2=/usr/local/apache/bin/apxs \
  --with-mysql=/usr/local/mysql \
  --with-mysqli=/usr/local/mysql/bin/mysql_config

Add the following to httpd.conf:
  DirectoryIndex index.html index.php
  AddType application/x-httpd-php .php

vim

Install vim.  Change /usr/bin/vi to point to vim.

proftpd

Setup chroot jail.
'DefaultRoot ~ !ftp-special' in /etc/proftpd.conf