OmniHTTPd Server Documentation

Last Updated: April 29, 1996


This documentation is for release 1.0a6 (Alpha 6)

What is OmniHTTPd?

OmniHTTPd is a powerful all-purpose industry compliant WWW server for Windows 95. It is designed to use the Winsock TCP/IP interface to server web documents over any type of Internet connection. Best of all, OmniHTTPd is free. Why spend thousands of dollars on a Unix or NT system and web software when you can use OmniHTTPd with Windows 95?

The server complies with the industry standard HTTP/1.0 specification meaning maximum compatibility with all currently available browsers. Future versions of the server will also be compliant with the new HTTP/1.1 specifications, making it the most advanced server available for the Windows 95 platform. Some of the features of this new specification are already enabled in the current release.

For maximum performance, OmniHTTPd is both 32-bit and multi-threaded. OmniHTTPd is also designed with the computer hobbyist in mind. While powerful enough to serve over 10GB/day, the daemon is compact and easy to maintain, making it the ideal choice for the novice web master.

OmniHTTPd is currently under development; as a result, the alpha version being distributed is unfinished.


Contents


Copyright and Disclaimer

This software is Copyright © 1995, 1996 Omnicron Software Solutions. All rights reserved.

By using this test version of OmniHTTPd you are consenting to be bound by agreement to the following:

GRANT OF LICENSE

Omnicron Software Solutions (the "Company") has granted you, the user, a limited license to test OmniHTTPd (the "Software") This does NOT give you the license to modify, translate, reverse engineer, decompile, disassemble (except to the extent applicable laws specifically prohibit such restriction), or create derivative works based on the Software.

DISCLAIMER

Since the Software is provided free of charge, Omnicron Software Solutions (the "Company") shall not be held responsible for any damages arising from the use of the Software. The Software is provided on an AS IS basis, without warranty of any kind, including without limitation the warranties of merchantability, fitness for a particular purpose and non-infringement. The entire risk as to the quality and performance of the Software is borne by you. Should the Software prove defective, you and not the Company, assume the entire cost of any service and repair.

Security mechanisms implemented in the Software have its limitations and you, the user, must decide whether the Software sufficiently meets your requirements.


Upgrading to Alpha 6 from Alpha 4 or 5

  1. Unzip the new executables and copy them over the old versions.
  2. Run the new ADMIN.EXE and click Properties for each configuration. If you are using Perl, make sure that the Perl command line is configured correctly under the Advanced tab. Make sure that the number of server threads and the CGI script time out is correctly configured. You may see garbedge numbers in the blanks since the setup was from an older version.
  3. You have successfully upgraded.

Upgrading from an older version

  1. Unzip the new executables and copy them over the old versions.
  2. Run the new ADMIN.EXE and press the Reset button to restructure and upgrade your setup information on each configuration.
  3. You will have to re-enter all your setup information.
  4. You have successfully upgraded.


Release Notes


Features

Installation

The alpha release does not have an installation program. To use, copy the distribution .ZIP file into a directory and unzip the files using the -d option so that PKUNZIP creates the proper directories for you. If you are using WinZip, make sure that you check the "Use Directory Names" option.

Installation is easiest if you use the directory C:\HTTPD as your root as all the default settings point to this directory.

Note that 'Primary' is the default configuration. To create and use other configurations, simply run the server with the configuration name as a command line parameter. Note that multiple copies of the server can run as long as each copy uses different network ports and log files.


Configuring the Server

To configure the server, run ADMIN.EXE. The default configuration is Primary. You can create additional configurations by pressing New.

Network

Port Number

Timeouts

Keep Alive


Server

Site Address

Server Root

Default Index

Email Address

Server Priority

Enable DNS Reverse

Send Version Information


Logging

Access Log

Error Log

Trace Log

Referrer Log


Alias

Redirections

Standard CGI

Windows CGI

MIME


Indexing

Auto-indexing

Table indexing


Advanced

Just what the name implies. Don't touch these unless you know what you are doing.


Running the Server

To run the server, run OHTTPD.EXE. Running the program with no parameters will cause the default configuration to be loaded.

To use a different configuration, supply a name as a command line parameter. For example, the command line:

OHTTPD Port96

will force the server to use a previously set configuration called Port96.

The server will start in the background and an icon will be placed into the system tray. You can click on the icon to call up a status window. You can also right click on the icon to bring up a menu. Closing the status window does not shut down the server; it must be done from the menu.


Troubleshooting

Server side includes aren't working!

Make sure you rename the extension of the files that you want parsed to .shtml. Also make sure you have updated the MIME types in the administration program.

What are all those OMN?????.TMP files doing in my server directory?

These files are usually a result of unsuccessful CGI launches. It could be a problem with your CGI script. You can safely delete these files if the server is not running.

My setup is all messed up, how can delete it and go back to the defaults?

Using the administration program, select the offending configuration and press the Reset button.

Why does the server say it can't bind the socket?

Check to make sure that another copy of the server isn't running. Make sure your TCP settings are correct. Make sure that you are using a Winsock compliant TCP socket interface.

How come connections remain open even though the client has finished transferring information?

The connection is probably in Keep-Alive mode and will stay open for the Keep-Alive amount of time before closing. By reusing the connection for subsequent requests, the overhead of tearing down and building separate connections is eliminated. Microsoft's Internet Explorer supports Keep-Alive connections. Netscape's support for Keep-Alive connections is mildy retarded and will hang frequently on transparent .GIF files for reasons unknown.

My local redirections don't work. I can't use http://site.com/foo, I always need to type http://site.com/foo/ How do I fix this?

Make sure that the site address is set properly in the configuration. OmniHTTPd needs this to be set correctly so that it can tell the browser the correct place to look for the redirection.

I just mucked up the registry, what do I do?

Hopefully you didn't mess up the important parts (like Windows) If it is just the OmniHTTPd settings, you can remove the entire key and then run the configuration program again to create them with defaults. If you've messed up Windows, you'll have to rebuild it from the .DAT files in the root directory. Note that this shouldn't be a problem in the latest release, which comes with a setup program.


Back to the OmniHTTPd Page
Copyright © 1996 Omnicron Software Solutions