What you must change
First of all, ask your Internet Service Provider where is "perl". Perl is a computer language and DoubleMessageBoard is written in perl. If your provider doesn't have perl or not let you use it, you cannot use DoubleMessageBoard. Sorry about that but I cannot help you. Also ask where you can upload cgi scripts, .htaccess and data files. While some providers let you put a cgi anywhere within your directory, others are specific. You also ask sendmail path or the location of "sendmail" program in the server.

Once you get the answers from the provider, open setup.cgi and bbs.cgi which are nothing but text documents. Use NotePad, a text editor or a word processor. The perl path or the location of perl must be the first line of a cgi. For example:
#!/usr/local/bin/perl

If your provider does not use UNIX based server but PC server, you may delete the first line altogether. Extension ".cgi" does the trick. Mac based server, though they are small in number, does not need "path" either, instead you save the cgi as a "script". This can be easily done by Perl-installed-Mac. (Only if you have it!)

Go down to
################
# basic set up #
################
$basurl = "http://your_url/";
$bbs = "http://your_url/bbs.cgi";
$setup = "http://your_url/setup.cgi";
$basdir = "/your_directory/";
$addrss = 'nobody@visitware.com';
$smpath = "/usr/sbin/sendmail";
$seed = "za";
$sfile = "secret.dat";
$ifile = "index.html";
     :
     :
Please note: the above is for setup.cgi only. bbs.cgi has no $smpath for sendmail path nor $setup.

Replace http://your_url/ of $basurl by your web site url where you want to accommodate message boards. A sub-directory with a message-board will be created in this directory. If you can place cgi scripts into the same directory, the value of http://your_url/ for $bbs and $setup can be the same - you add only bbs.cgi or setup.cgi after the value of $basurl. You also place the link-page $ifile (of the list of message boards on your site) here. This page is named index.html but the name may be changed according to the server. It will be explained later.

While $basurl (base url) is the location of your message boards site relative to the all of internet, $basdir (stands for base directory) is the location of your message boards site relative to the server's system. This variable tells where within the provider's hard-disk you can place data files and make a sub-directory for a message-board. Once you get the answer from your provider, replace /your_directory/. Please note, both $basurl and $basdir have / at the end. You do not omit them.

setup.cgi automatically sends an e-mail to a new user reminding him of his ID, password, etc. and one to yourself when a new message-board is made. E-mails are also sent when the board is deleted. bbs.cgi has an e-mail address too but not to send automatic mail. It is for someone who want to contact you. Replace 'nobody@visitware.com' with your mail address. (Otherwise nobody in visitware com will get it.) Please note the mail address is put in 'single quote'. Perl treats single quote and double quote differently and @ has special meaning within double quote. (To use @ or the likes in double quote, you need to use "\" in front of it.)

Provider's sendmail path replaces /usr/sbin/sendmail in setup.cgi.

If your provider does not have sendmail or not let you use it, you can not use automatic mail notice. You may delete $smpath and the all sendmail related lines. Open setup.cgi and find and delete from # mail confirmation start # to # mail confirmation end #. You will find two of them. Though my experience tells that the server does not have "sendmail" and you keep "sendmail" lines and no error arises except you can not send a mail.

$seed is for encoding a password. Replace za with two characters of your choice. But bbs.cgi and setup.cgi must use the same characters.

You also change the name of $sfile (secret data file which is, at first, a blank text file) from secret.dat to something else for security. You do not need to remember its name. Make it difficult to guess.

$ifile is a HTML file which works as a default page for each directory. The name of such page may not be index.html. It can be index.htm or default.htm or anything else depends on the server. Change the name according to your provider. I made the default page for the base directory the link page where you can find the list of all message-board under your control, and the default page for each sub-directory for the message-board itself.

Other files than CGIs
You also modify the contents of the default page, $ifile for the base directory as you like. It is index.html here. But you keep <!--NEW USER--> line untouched. This is where a new link for a new message-board is added. Or you delete it if you do not want a link page on your site. You may delete and rewrite all add-new-link related lines from setup.cgi, though keeping them there would not cause an error. You may install LazyLinksLimited, an independent automatic link CGI instead.
<HTML>
     :
     :
<BODY>
     :
     :
<!--NEW USER-->    
     :
     :
</BODY>
</HTML>

 
 
 
 
 
<- Do not change this line.    
 
 
 
 

You may already have .htaccess in your directly. If so, it must have at least
Options ExecCGI
AddType application/x-httpd-cgi .cgi
AddType application/x-httpd-cgi .cgi/
in it.

If you are a Windows user, you may not able to have a file name .htaccess. Then you have it in other name. Upload it, and then rename it to .htaccess.

Many servers do not show files that begin with a period "." that is .htaccess. If you must have it yet you cannot see it, don't panic. See if the cgi works first. Next, ask your provider.

If your server is not UNIX with certain server program, you may not need .htaccess . Then forget it and follow the direction given by the provider. PC and Mac handle a file differently.

If you need to put cgi scripts and data files into the separate directories, and unless your provider has set the server automatically redirect any attempt to peek into your cgi directory, you want to redirect it out or make a default page for the CGIs' directory too. The content doesn't matter. Having the default page in the cgi's directory enhances security.

Before file upload
You can make other optional changes on CGIs and related files. Otherwise save the texts. Change carriage return and/or line feed. Mac, Windows and UNIX employ different symbols to tell where a line end (or the return key is pressed). Convert them (a lot of text editors can do this) before you upload CGIs so that your server can understand where the lines end. The easiest way of doing this is, however, just forget about the difference and upload files as text (or ASCII) files. They are, indeed, nothing but text files (except MacPerl).

Permission or file access mask
Since you've already made your homepage, I assume you know how to upload files. You are going to upload setup.cgi, bbs.cgi and index.html and if necessary .htaccess. You may create or upload a blank file and name it as you like. The blank file is used for secret.dat. After the upload, you set something called permission or file access mask. Usually it can be done by FTP.

Select setup.cgi and bbs.cgi, set permission 755 (or -rwxr-xr-x) which means the owner can read/write/execute the file while others can read/execute only. The permission of index.html and secret.dat (but it must have other name now) is 666 (or -rw-rw-rw-) which means everybody can read/write the file but no execution. The directory in which you place data files (index.html and secret.dat) and create a sub-directory for a new message-board in it needs 777 (or drwxrwkrwx) and .htaccess is to be set 744 (or -rwxr--r--). If FTP does not work, ask your provider. You may need to set permission by telnet or you may ask the provider sets permission on behalf of you.

Incidentally you may see the permission a number with four figures instead of three. If so, 755 means 0755, etc.

It's worth to try if any smaller number does the same trick. If you set bbs.cgi 705 instead of 755 and if it works, you can have more security. But I cannot tell if your server allows the cgi works under the tighter security. It all depends on your server. Ask your provider or try and see.

Test run
Once you set the permissions, run a browser. Type http://whatever_your_url/setup.cgi and you see the set up page to create a new message-board. (Please do not have any file called temp.dat which you do not want to be deleted in the message boards directory. And do not have new.txt in the directory where you have secret.dat.) If it does not work, check if setup.cgi is in the server and the permissions is 755. Next, check the perl path is right. It must be the very top of the script, no line, no space before #!.

If you believe you did nothing wrong, yet you cannot see the setup page, try following cgi script:
#!/usr/local/bin/perl

print "Location: http://www.visitware.com/sobaya/\n\n";

Change "path" or the first line #!/usr/local/bin/perl according to the information given by the provider. Save it as, say, test.cgi, upload it and set the permission to 755. Run a browser, type the the location of your test.cgi into the browser's location window. If you can not see my homepage, check "path", "permission", etc. again.

But this Location stuff is tricky, I know one provider which requires print "HTTP/1.0 302 Moved Temporarily\n"; before print "Location... If the server is IIS, ask your proivder if you need print "HTTP/... . You may, instead, use following test.cgi
#!/usr/local/bin/perl

die "It's a good day to die";

which gives you "Diagnostic Output" telling "It's a good day to die".

If test.cgi works then setup.cgi works with the same perl path. After the setup page, if you can not create a new message-board, you check the permission of the directory itself and/or the directory path $basdir. The error message will tell you in which directory the cgi failed and give you an idea what the right directory path must be.

Check the sendmail path ($smpath) for the mail error. File name for the file handling error. etc. etc.

You can also modify or delete a board from setup.cgi. To modify it, you need to have basic HTML knowledge. The more the better. You can even add a JavaScript on it. Once you made a message-board, try if it works. Type a word or two. Click "OK/send" button. You would see "thank you message" and then the message-board with new comments. You then go to http://whatever_your_url/bbs.cgi where you see the administrative page. You can delete an individual entry or all the entries, or just click "All OK" to end the maintenance. Trapping an error and fixing it is almost identical between setup.cgi and bbs.cgi.

To use DoubleMessageBoard, make it sure that you have the latest one and try it first without modification but change only where you need to (perl path, directory path, etc.) according to the provider.

method="GET"
The last but not least, DoubleMessageBoard (prof) does not work if the server does not accept "POST" type data input. If you want it works with "GET", go to # main script # of the both cgi and change the begining of it from
################
# main script #
################
if ($ENV{'REQUEST_METHOD'} ne 'POST') {&admin;}

read(STDIN, $input, $ENV{'CONTENT_LENGTH'});

to
################
# main script #
################
if ($ENV{'QUERY_STRING'} eq "") {&admin;}

$input = $ENV{'QUERY_STRING'};

and rewrite all forms sending data from "POST"
     :
     :
<FORM ACTION="..." method="POST">
     :
     :
to "GET".
     :
     :
<FORM ACTION="..." method="GET">
     :
     :
Search method="POST"> in both cgi and replace them with method="GET"> by a word processor works perfect.