Required Packages

Build Steps

  1. Build OpenSSL for Solaris, as described here.
  2. Build a complementary mod_ssl + apache pair:
    cd /tmp
    gtar -xvzf /home/apache/src/apache_1.3.37.tar.gz
    gtar -xvzf /home/apache/src/mod_ssl-2.8.28-1.3.37.tar.gz
    cd mod_ssl-2.8.28-1.3.37
    ./configure --with-apache=../apache_1.3.37 --with-ssl=/usr/local/ssl
    cd ../apache_1.3.37
    ./configure --prefix=/home/apache/apache-1.3.37 --enable-shared=max \
           --enable-rule=SHARED_CORE --enable-module=so --enable-module=most
    ## The certificate is constant; just make sure you don't overwrite it
    # sudo gmake certificate TYPE=custom
    sudo gmake install
  3. WebDav:
    cd /tmp
    gtar -xvzf /home/apache/src/mod_dav-1.0.3-1.3.6.tar.gz
    cd mod_dav-1.0.3-1.3.6
    ./configure --with-apxs=/home/apache/apache-1.3.37/bin/apxs
    gmake; sudo gmake install
  4. mod_perl - first, the modules have to be installed on the system as a whole:
    cd /tmp; gtar -xzf /home/apache/src/mod_perl-1.29.tar.gz
    cd mod_perl-1.29
    cpanencap; gmake; sudo gmake install
    Then you can move on to making the full module:
    perl Makefile.PL USE_APXS=1 \
    	WITH_APXS=/home/apache/apache-1.3.37/bin/apxs EVERYTHING=1
    cd apaci; gmake install
  5. PHP: (You may have to build with gcc here.)
    cd /tmp; gtar -xzf /home/apache/src/php-4.4.4.tar.gz
    cd php-4.4.4
    ./configure --with-imap --with-imap-ssl --with-ldap \
            --with-apxs=/home/apache/current/bin/apxs \
    gmake; gmake install
    This doesn't always go that cleanly. You may have to replace the 'gmake install' step with:
    /home/apache/apache-1.3.37/bin/apxs \
    	-S LIBEXECDIR=/home/apache/apache-1.3.37/libexec \
    	-S SYSCONFDIR=/home/apache/apache-1.3.37/conf \
    	-i -a -n php4 libs/
    Additionally, to get IMAP working you'll probably have to follow the instructions here to build c-client. I know this is annoying.
  6. Update the configuration files to your tastes; the ones in /home/apache/conf are probably what you want.
    cd /home/apache/apache-1.3.37
    mv conf conf.bak; ln -s ../conf .
    cd ..
    rm current; ln -s apache-1.3.37 current
  7. Start it - sudo pkill httpd; sudo /etc/init.d/webserver start

Adding Modules

If you're using APXS to add modules (--with-apxs=[...]), make sure you copy the httpd.conf out of the way before you let it do the install. It will overwrite the file. Grr.