Uber Web Build
From Syscore
The Uber Web Build is an Apache web server build containing the various technologies currently in use by Syscore. Each "build" is given a number, starting at 000. The build is installed, tested, and then placed in a replicated AFS volume to ensure availability. The uber build contains basic startup and log rotation scripts used by various web sites
Contents |
Using The Uber Build
Creating A Web Server Instance
A basic web server instance is a directory tree with the following files/directories. $root is simply the root of your web tree, it can be in AFS, or not. The uber build cares not.
$root/instance.conf
The instance.conf file contains basic information needed for the startup of your server instance. The only required fields are version and pid_file, however, most instance.conf files will look something like this:
version=005 keytab=/etc/umbc/filedev.keytab kerbuser=www/filedev servername=filedev_httpd pid_file=/var/umbc/filedev/httpd.pid
See below for the arguments to startup, which correspond to the instance.conf settings.
$root/bin/init.d
This should simply be a symbolic link to /afs/umbc.edu/admin/www/uber/bin/init.d. Link your /etc/rc2.d/S99whatever script to that. Thanks to some magic with readlink, it will automatically figure out what it's supposed to do if you've followed all of the conventions.
$root/conf/httpd.conf
Your standard Apache httpd.conf file. It's important that you omit the definition for PidFile.
startup Parameters
- version
The uber version # to run.
- instance
The name of the instance (web tree) to run under. Used for finding .conf files, etc
- conf
Path to the httpd.conf, relative to the instance.
- options
Other options to pass to httpd.
- keytab
Path to the K5 Keytab to get the credentials to run this instance under.
- kerbuser
The kerberos user/principal to run this instance under.
- servername
argv[0] of the executed server -- something more descriptive than httpd.
- instance_conf
Path to the instance.conf file; note, this is useless within the instance.conf file itself.
- config_perl
Path to some perl code that will get executed before the server gets launched. Useful for setting environment variables and such.
- pid_file
Path to the httpd.pid file for this instance.
- nokerb
Boolean -- don't manage kerberos/AFS authentication for this instance.
- noperl
Do not include mod_perl specific startup stuff in the server's execution string.
- httpdoptions
A file containing options passed into httpd, in addition to ones you specified in the options argument. See the startup environment for the uportal instances for a creative use of this to deal with bind addresses and ports.
Creating an Uber Build
Uber Build Notes
001
Not for production use.
002
Not for production use.
003
- apache 1.3.33
- mod_ssl 2.8.22
- php 4.3.10
- fastcgi 2.4.2
- mod_perl
- available for i386_linux24 & sun4x_58+
- sgi_65 build is missing things like mod_perl
004
- apache 1.3.33
- mod_ssl 2.8.22
- php 4.4.0
- fastcgi 2.4.2
- mod_perl
- available only for sunx86_510
005
- apache 1.3.33
- mod_ssl 2.8.22
- php 5.0.5
- fastcgi 2.4.2
- mod_perl
- available only for sunx86_510 (or now)
007
- apache 1.3.37
- mod_ssl 2.8.28
- php 4.4.4
- fastcgi 2.4.2
- mod_perl (perl 5.8.6)
- available for sunx86_510 & sun4x_59
