HAM Installation

The latest and greatest method of Hazel installation uses her new Hazel Admin Module -- "HAM." HAM does all the tedious work of getting a working Hazel sample catalog installed on your server. You'll have to get the HAM running, but after you've done that, everything should be E-Z.

These instructions assume a basic knowledge of using an FTP program. You'll need to know how to upload files, download files, and change their Unix permissions. Most Windows and Macintosh FTP programs today make these things easy to do, but (because each program is different) not easy to explain. You'll need to use some of your admirable common sense to figure it out.


Before you begin your installation, you'll need an FTP client. For Windows, we recommend CuteFTP. For the Mac, Fetch. If you're using some flavor of Unix, you're one bad mutha who already knows how to use FTP, but Quinn recommends lftp for its GNU readline prompt, aliasing, and recursive get/put.

Step 1: Know Thy Server

Before using the HAM to install Hazel, you must know which HAM you need. If you're using a Windows web server, the answer is simple-- the most recent HAM with an .exe file extension.

If you're one of the lucky many whose site is housed on a Unix-based server, you'll need to find out what type of Unix system it runs. If you already know that, then you can go directly to ftp://ftp.netsville.com/pub/hazel/updates/HAM/ and download the latest version for your operating system.

If you do not know what type of operating system you're server is running, we have a script which will tell you.

If you know which HAM to download, and have already downloaded it, skip to step 2 below. Otherwise, continue reading for information on identifying your server and downloading the right HAM.

Save ftp://ftp.netsville.com/pub/hazel/misc/hello-hazel.cgi to your computer. In most browsers, right-click (or control-click on a Mac) and choose "Save As."

Next, connect to your web server with your FTP program. Change to the directory where CGI programs are allowed. (If you don't know where that is, call your hosting support and ask them!)

Upload hello-hazel.cgi from your computer to your web server's CGI directory. Change its file permissions so that it is readable and executable by the owner, the group, and the whole wide world. Changing permissions (or the file "mode") either involves clicking on checkboxes in your FTP program (try right-clicking on the file, or searching for a `change file mode' or `change file permissions' option), or issuing a command such as `site chmod 755 hello-hazel.cgi'. The particulars are specific to the FTP program you're using.

Now enter the URL of the newly uploaded hello-hazel.cgi into your web browser

Do you see a page entitled "Hello, Hazel!" consisting of a compact table containing assorted information on your web server? Awesome, swell, groovy! If not, here are some troubleshooting tips:

If hello-hazel.cgi isn't "executable", the web server won't run it. If the web server won't run it, you'll either receive a "Server error" message, or the contents of the script.

If you received a "server error", make sure you set the file mode as readable and executable. If you're sure the permissions modes are correct and it still doesn't work, then contact your ISP for help. You're not using a Windows NT web server, are you? Remember what we said about this being a Unix shell script?

If you saw the contents of the script itself, then you didn't upload it into the proper directory. Contact your ISP and ask them where you should be putting CGI files and the URL you should be using to access them.

If you can't get this script running, then you probably won't be able to run the Hazel program, either. Contact your ISP for help.

If hello-hazel.cgi ran, then it will show you some information on your server. You may want to print it out right now, for later reference. Most of the info will be used when configuring Hazel later and is neither "good" nor "bad." The data in the "UID" row, however, can be bad news.

If you see a "nobody" or "nouser" or "nogroup" value here, then your server is probably not suitable for running an ecommerce website. The UID field tells you as which user your server runs CGI programs. Optimally, this should be your userid. If it isn't, then chances are everyone is running their CGI as the same user, and thus sharing all their data. If this is the case on your server, see our CGI and You page for advice. If you can't get satisfaction from your ISP, consider switching to one of our confirmed hosts.

Step 2: Upload the HAM CGI

We're almost finished. All that remains is to upload HAM itself and let it do all the work. More recent versions (later than November 2003) of the hello-hazel script will attempt to download and install HAM automagically. If your hello-hazel was able to do this, you're done! Just follow the instructions in HAM to finish your Hazel install.

Otherwise, hello-hazel will have pointed you to the probable location of the HAM appropriate for your server. Find the right one, and click the link to download it to your PC.

Next, upload the HAM program to your CGI directory (in "binary" or "raw" mode, not "ascii" or "text") and rename it to ham.cgi (or ham.exe on a Windows server).

If uploaded to a Unix server, use your FTP program to change the "permissions" or "file mode" of your ham.cgi such that it is readable and executable by everyone, but writable only by "user" or its "owner" (which is you.)

Enter the URL for your newly-uploaded HAM CGI into your web browser. If you did everything right, you should see a form prompting you for your Hazel serial number and registration keys. If you see that, you're done! Follow the screens until HAM installs your Hazel for you.

If you see an error such as "Not found", then you're in the wrong directory. Find the right directory and try again, or call your server's support staff and ask them for help.

If you receive a bunch of strange characters, then you probably didn't upload the file to a directory which supports CGI. Instead of running the HAM program, your server is just spitting out its binary innards. Find where your CGI go, and put the file there. A quick call to your server's support line should get you this info.

If you see something like "Internal server error", first make sure you've uploaded the file in binary/raw mode (not text/ascii!), and (if on a Unix web server), that you've made the ham.cgi executable.

If all else fails, call your server's support line and ask them what operating system your web server runs and where you should be putting CGI files.

If they tell you it's a YP and not an MP, then call or email us and we'll try to help.

What next?

Congratulations! Now that HAM is on your server, you need only follow the prompts to install Hazel and her sample catalog. HAM will fetch all she needs from the Netsville web site, so you're sure to have the latest batch of Hazel accoutrement.

Getting Started HZML Rules Extras Advanced Reference
Products File
Order Reporting
Known Problems
HZML Tokens
HZML Loops
Sales Tax
Input Fields
Search Engine
Optioned Products
Design Tips
Payment Methods
Regular Expressions
Perl API
HTML Basics
CGI and You

Hazel Home - Help Contents - Searchable Knowledge Base - Live Technical Support