Frequently Asked Questions

Hiawatha

1. All the hostnames within a domain should show the same website. Is that possible?

Yes, you can do this by using a wildcard. Before using the wildcard, a complete hostname must be specified. It is necessary for 301 (redirect) errors.

VirtualHost {
    Hostname = www.website.net, *.website.net
    ...
}
2. Can Hiawatha show the content of a directory?

Yes, use the following option for the VirtualHost section or in a .hiawatha configuration file inside that directory:

ShowIndex = yes
3. Can I specify multiple startfiles for a virtual host?

No. If you want to use a different startfile for a directory, use the StartFile option in a .hiawatha file in that directory.

4. Does Hiawatha support GZip content encoding?

Hiawatha has no support for on-the-fly GZip content encoding, because there is no need to. Most websites consist of static files like images and stylesheets and dynamic content generated by CGI. Images are hard to compress, so there is no need for GZip encoding there. Stylesheets are often small (a few kilobytes), so there isn't much to win by compressing them. Most Hiawatha users use PHP which has GZip output support, so that covers the important part of the dynamic content.

However, if a website does contain a large file that can be compressed, a jQuery javascript for example, you can use Hiawatha's special GZip content encoding support. Set the 'UseGZfile' option to 'yes' and gzip the file. Hiawatha will upload gzipped version of the file. Make sure the original file is still present, in case of a browser that doesn't support GZip content encoding.

5. Instead of a directory index, I get "No input file specified." What goes wrong?

You are probably using PHP in FastCGI mode. When using FastCGI, Hiawatha doesn't check if the requested file exists, because the FastCGI daemon could be located on a remote server. A directory index is only shown if the requested file is not found, but this will never happen if the StartFile of that directory is a CGI script to be handled by a FastCGI daemon.

There are two solutions for this issue:

  1. Set the StartFile for that directory to a non-CGI file, by adding "StartFile = index.html" to a .hiawatha file in that directory.
  2. Tell Hiawatha to look at the result of the FastCGI daemon and show the directory index if that result is a '404 Not Found' by using "TriggerOnCGIstatus = yes" in virtual host section in the Hiawatha configuration.

6. Is it possible to run Hiawatha as a service under Windows?

Yes, that is possible since version 6.9. The Windows package of Hiawatha contains a Cygwin tool to run Hiawatha as a Windows service. Read the included Installation.txt for more instructions.