Skip to content
Find file
Fetching contributors…
Cannot retrieve contributors at this time
121 lines (86 sloc) 4.87 KB
** Installation procedure for HTTPi
** Copyright 1998-2009 Cameron Kaiser
1. Check that all files are present. Make sure you have Perl 5 installed.
You only need the executable, not the standard distribution in full.
If you aren't sure if you have all the files, look in the Manifest file
(it's an ls -lR of the development directory, minus, of course, the
Manifest file itself) and compare it with an ls -lR of your directory.
2. Read the LICENSE file.
3. Read the LICENSE file.
4. Read the ... have you read it yet?
5. Determine which configure file you should be running on your platform.
It is *highly* recommended that your Perl include support for alarm(), though
grudgingly no longer required. (For all these installations, you might need
to know your AF_INET socket constant, although HTTPi probably knows it
already. On Linux, AIX, SCO, HP/UX and Solaris, and probably every other
Unixy thing, it's invariably 2. Demonic will try to autodetect it.)
If you want to use HTTPi for SSL, your ONLY option is configure.stunnel.
Demonic installation:
configure.demonic For Demonic HTTPi, the daemonised version. You'll
either need, a C compiler, or a list of
your system's socket constants (these are only
needed for constants, not execution). Your Perl must
also support fork(). This is the most popular option.
Some sort of inetd installation:
configure.inetd Most Unix boxen. Use this if you use the vanilla
inetd. Will autoconfigure your files for you if root.
configure.xinetd For users of the inetd clone
Will autoconfigure your files for you if root.
configure.launchd Most Mac OS X users (10.4 and higher) who aren't
using Demonic HTTPi, or for people who are using
launchd and don't want to use the other options.
Will autoconfigure your files for you if root.
configure.stunnel For users of stunnel
This is the only supported method for an SSL server.
Will autoconfigure your files for you if root.
configure.generic Don't know what inetd you have, or one I don't support
yet. You'll have to connect HTTPi to your inetd
demonic is the fastest and easiest to set up (you don't need to be root), but
requires some special care and feeding. See the documentation. Most people
prefer it. So will you.
xinetd is vewwy vewwy fast. If you have the means, I highly recommend it. (To
quote Ferris Bueller.) Many people will see a significant speed difference with
it over your OS's stock inetd; as such, many OS "inetd"s are really stealth
xinetds running in compat mode! It assumes, however, that your .conf file
is /etc/xinetd.conf, which is xinetd's default.
Most modern Mac OS X users who do not want a daemon HTTPi will need to run
configure.launchd. 10.2 and 10.3 users can still use configure.inetd or
.xinetd, though this may require some internal configuration. 10.0 and 10.1
are not recommended and not supported.
configure.stunnel requires that your stunnel be already setup with a working
stunnel.conf and all of your options and certificates preloaded. Do not
run this script until that is accomplished.
Some of you will still be running configure.inetd, so for backwards
compatibility it's still named configure (just a symlink to configure.inetd).
Do not run configure.generic if you can run one of the others.
Make sure that and are in the current directory.
6. Run that config file.
$ perl configure.demonic # most unices that don't want inetd installation
$ perl configure.inetd # most unices that want inetd installation
$ perl configure.xinetd # smart unices/sysadmins that want xinetd installation
$ perl configure.launchd # those wacky Maccies (like me) who dislike daemons
$ perl configure.stunnel # SSL via stunnel
$ perl configure.generic # others who can't help it
Do *not* use the Makefile. The Makefile is not intended for installation;
it's used for rolling your own distributions. Do *not* use the Makefile.
Do *not* chew your nails.
For that matter, don't use perl Makefile.PL either.
NOTE TO (x)inetd/launchd/stunnel INSTALLERS:
If you're on a Unix box, you must run as root for full install options.
Any user can build an object, but only root can modify your configuration
files, unless you are really dumb and made them writeable (BAD IDEA).
7. Follow the handy and verbose prompts. The configure program may have
additional directions to follow. Follow them.
8. If configure bombs, feel free to contact me with the error message at
9. DO NOT TOAST THE INSTALL DIRECTORY. If you make config changes, etc.,
you will need these files again. Don't delete them. Especially hold on
to the configure transcript file, as it will make tweaking HTTPi's code
much more painless.
10. Enjoy your new, small and extremely sexy web server.
Cameron Kaiser
Something went wrong with that request. Please try again.