4. What are the system requirements?
Software: Perl 5.004 and up and http server compliant to the CGI standard, including Apache server,IIS and Netscape server. Hardware: 300MHZ and up CPU (Intel or AMD), 64MB ram minimum.
5. I am using Windows NT and IIS server? Does AnyBoard support them?
Yes. However, for IIS server you alwyas need to set the $fic_top_url and $fix_top_dir variables and set $no_pathinfo to 1.
6. How did you make it reliable?
When two or more users are trying to post messages at the same time, they will be updating the main forum page simultaneously. If this is not handled properly, the message board will be corrupted. Message boards like WWWBoard suffer from such problems. Whenever two people are modifying the WWWBoard at roughly the same time, the whole board will be corrupted and the information on the board becomes inconsistent or totally lost.
AnyBoard is designed to be robust under race conditions. In addition, on systems with flock, AnyBoard uses flock to protect all critical sections. With our superior design, even on systems which do not have flock, the risk of corrupting the whole message board is also zero (though individual messages may get corrupted). AnyBoard has built-in triple fault-tolerance and error recovery. Even if you delete the crucial index files by accident, it can still recover.
7. How do you make it fast?
AnyBoard is designed and written by software engineers who have in-depth knowledge of operating systems, networking, and Perl 5. It does things as fast as possible. Firstly, don't be scared by the size of the AnyBoard script. When AnyBoard is executed, not all of its 16,000 lines of code is compiled by Perl. Instead, the code is compiled as needed. You can time the compilation time by doing a dry run of the script on the command line, it is fast. Secondly, AnyBoard uses very efficient algorithms to do things.
8. How do you make it secure?
AnyBoard uses the UNIX password checking mechanism: passwords are one-way encrypted. All vital operations are authenticated with username and passwords before they are performed. Passwords are sent using a cookie, which makes the authentication process transparent. The cookie is destroyed upon the end of your browser session.
9. I want to edit the script to change some look & feel, can I do that?
You are strongly discouraged from doing that. 1) Almost every aspect of AnyBoard can be configured from the admin page. 2) Editing the code can easily break the program.
10. How do I report a problem?
If you are reporting a problem to tech support, don't just say " it does not work", you need to provide information such as the operating system name, http server software name, perl version, the detailed description of the problem, the error messages you got. Questions to support without any specific information is useless and will be simply discarded. If you are a completely novice, you should get your sys admin to help you , or you can purchase the installation package and we will install the software for you.
11. I installed AnyBoard, but got internal server error from my http server.
The internal server error could be caused by syntax error in the final script or missing modules. Make sure that perl 5 is used and that there are no simple typos in editing the script. If you have command line access at the server, run the script on the command line, and see what errors perl reports. The error can also occur when the web server is heavily loaded and low on resource.
Netbula can install the script for you at a small cost (see order form).
12. What is the meaning of the URL http://site/cgi-bin/anyboard.cgi/dir1/dir2/?cmd=log ?
Here, the /dir1/dir2/ is merely an additional parameter passed to the script. It is called PATH_INFO. AnyBoard uses this to identify different message boards.
If $no_pathinfo is set to 1 (e.g, for IIS servers), then the equivalent URL of the above is
13. How do I setup a list of forbidden words or names?
The exclusion pattern must be a perl regular expression. If you want to disallow a list of words, you must separate them by |. You can use other perl expressions that will allow you to exclude groups of words without entering each one. sex.* for instance, will exclude sex and any word starting with it, like sexy, sexual, etc. Never put a | at the begining of the end of a pattern, it will cause the pattern to match anything.
14. I changed the inline message options in the Presentation settings, but I can't access the old posts.
AnyBoard only regenerates the main forum page on configuration changes. You need to let it regenerate forum pages AND individual messages.
15. What does "Require posters to send Cookies" actually do? I know what cookies are, but what purpose are they used for with AnyBoard?
When enabled, people can't post if they do not enable cookies. AnyBoard uses a cookie for several functions, registration, editing, exposure of multiple identities, and more.
16. Regarding "Disallow user after this many violations"- What exactly is a violation? Can this be turned off?
It means lock out any user that has used banned words as specified in the forbidden words list, after a predetermined number of times. You can simply set that number to a large number to turn it off.
17. How can I tell if my system can use the "Enable file locking" feature?
AnyBoard will try to see if it is possible to enable it. If it can't, you are probably missing the Fctnl module and need to ask your admin to fix it, as this is standard on most UNIX systems.
18. If my system does not have flock or I do not enable flock, will AnyBoard crash?
NO! AnyBoard will not crash. Without flock, it is possible that the some individual html files or even the main forum page can get corrupted, but that is not the end of the world, since these file are merely products from the data files. You can regenerate them easily; just login to the forum and do any configure operation (you don't need to change anything, just submit one configure form), the main page will be regenerated.
19. Regarding "Physical path (not URL) to the rules file"- What is a rules file? What is it for and what does it do?
When you enable the email validation on registration feature, an email will be sent to the user with a validation link. The user needs to click on the link to activate his or her account. After the user clicks on the link, a page will show up with the rules file, which are the conditions for participating on the board (whatever you want them to agree to). The user needs to check a box indicating that he or she accepts the rules, and only then can the account be activated.
If you do not want the email validation/activation, then this will not come into play (default).
20. What should the format of the rules file be?
It can be a text file, or a file containing html tags, but not the <html>...<body> header and the corresponding closing tags. AnyBoard simply copies the whole file and displays it in an html page.
21. AnyBoard can't send email notifications, it got error XXX.
1) check if Socket module is there.
2) check SMTP server setting
3) check Notifier email address, some SMTP servers do not allow email to be sent from an outsider.
4) If got "550, relaying denied", ask your sys admin for help...
If you do not have a direct access to a SMTP server, you can try using the sendmail command. There are variables in the script to switch to using sendmail.
22. What does "Adopt orphan message" mean? What does it do?
When you delete a message in the middle of a thread, you are breaking the links. The message below the now deleted one is orphaned and will become a top level message. However, when this option is enabled, the orphaned message will be placed under a zombie parent, maintaining the threading.
23. In "Overview" mode, the background image does not appear as it does in "Newest" mode where you see all the messages. Is there a way to set this?
You must specify an absolute URL (start from / ) for the image.
24. When reading the actual messages, is there a way to set the background image or color of these pages?
Use the message header configuration.
Since it starts from <body> you can specify everything like color, font, background image, link color, etc. You can even use different styles to do it. The same applies to the main page and the post message form.
25.How do I detect a posting bomb?
Set the minimum interval between two posts from the same IP address to some bigger number, for example, 30 seconds, then a posting robot can only post 2 messages a minute. You can also let AnyBoard send an alarm e-mail if new messages arrive too fast.
26. How do I ban a user?
You can ban users by userid, IP address pattern, full or partail domain name or by cookie track. You can very effectively ban a user by employing these banning methods together.
27. What are the names shown in parentheses after the poster's name?
Those are the names he or she used in the past. You can disable this by unselecting the "Display aliases" feature.
28. How do I use image icons for the labels (such as Post Message)?
In the configure Label section, set the labels to a <img src="..."> tag.
29. How do I remove the "Admin" link on the front page?
You edit the layout template of the navigation bar and remove the ADMLNK macro.
30. Where is the configuration stored?
The configuration is stored in a file named .forum_cfg under the forum directory. This and only this file determines the look & feel and policies of the forum. Therefore, if you copy one forum's .forum_cfg file to another forum, the other forum will look identical to the first one. If you have settings you want to keep, simply copy the .forum_cfg and place it in the new forum directories you create. The new forum(s) will then have the same settings as your present one.
31. How do I upgrade to a new version of AnyBoard?
You DON'T need to go through the installation procedure again. Simply edit the new AnyBoard.cgi file to set the few variables (perl path, master_cfg dir, etc) specific to your configuration and replace the existing AnyBoard.cgi with the new one.
32. When I upgrade AnyBoard, does the forum configuration remain unchanged?
AnyBoard tries to maintain backward compatibility as much as possible, therefore the configuration will be mostly kept on upgrade. To be sure, test any upgrades with a test board before upgrading your existing forums.
33. I created a forum with all the settings I want. How do I duplicate it instead of creating new forums afresh?
Simply copy the existing forum (with all its sub-directories) to another directory and regenerate the forum main page for the new forum. You can do this by logging in to the new forum using the URL
then configure the forum name. The forum pages will be regenerated.
34. How do I make my cool configuration show up as a optional setting for other forums?
Copy the .forum_cfg file to the master configuration directory, rename it to a file with extenstion .conf. For instance, if you name it blue-fancy.conf, then blue-fancy will show up as a stock configuration for all forums to choose.
35. Can you explain the purposes of the directories for a forum?
postdata/: directory that keeps the posted data, from which html pages are generated.
posts/: directory that contains the html pages for individual posts, these are generated from data files, therefore, you can delete all the files in this directory and have AnyBoard reproduce the forum main page and individual pages.
archive/: directory that contains the archived pages. The archived pages no longer have their corresponding data files, and one cannot respond to posts in the archives. If you delete the files in archive, they are gone forever, unlike those in the posts/ directory, which can be regenerated.
36. Where are passwords stored?
They are stored in the .fYz directory under the master config directory or the .fYz directory under the board directory, depending on the share password among boards option, if passwords are not shared then the one under the board directory is used. By default, there are 32 password files, a hashing algorithm is used to decide which file is used to store a user's password and profile. This hashing is needed to reduce the size of each password file and improve performance. For example, if a forum has 3200 users, then each file would contain 100 entries only.
37. I lost the admin password, what can I do?
Don't panic. You can manually edit the .forum_cfg file to nullify the admin password, by deleting the line starting with oA=. Afterwards, you can login (without a password) and then add a password for admin.
38. I click the "Reconfigure with default setting" button by accident, can't login as admin anymore.
All your settings are lost, the default administrator login is "admin" and there is no password.
39. How do I make file X (or directory X) inaccessible from the Internet?
Most web servers provide you with the mechanism to protect a page or directory. Consult your web server manual or service provider.
40. How can I change the fonts used on the pages?
In the Configure->Fonts section you can set the fonts for various parts of the forum.
41. There's a feature I'd like to see in AnyBoard. What do I do?
Please tell us about it. It may be an undocumented feature and we can tell you how to use it. If not, you will find us very receptive to new ideas and features. AnyBoard is the outstanding program that it is because we listen to users and administrators and have incorporated many of their suggestions. We are eager to hear your suggestions and may adopt them as well.
42. What are the common URLs in AnyBoard?
Login master admin panel: http://site/cgi-dir/anyboard.cgi?cmd=admin
Login forum at /dir1/dir2: http://site/cgi-dir/anyboard.cgi/dir1/dir2/?cmd=log
or if $no_pathinfo is set,
URL of the lead page:
43. What should I put for the forbidden word patterns (and other patterns)?
These patterns must be PERL regular experssions. It is important to remember that this is different from the wild cards used on UNIX and DOS command lines. If you use * incorrectly, you may run into severe problems, such as everything becomes forbidden. The following are the basic rules:
. macthes any single character except new line
* means zero or more ocurrance of preceding character or pattern
+ means one or more occurance of preceding character or pattern
To match a * character, you must write \*
44.How do I ban a user?
You can use the bocked IPs and domains to ban users.
First, never put | at the begining or end of the pattern, | should be only in between two patterns. If you say "|206", it means nothing or 206, which causes it to match anything. To ban all IPs from 206.96.*.* You can just put 206\.96\. The pattern means anything contains "206.96.", try not to use *s, as it's trciky to get them right.
To be more accurate, you can put ^206\.96\. here ^ means the begining of something, so the pattern would only match IPs begining with 206.96
You can also ban by domain, suppose your user comes from *.someisp.com Just enter "someisp.com" into the forbidden domain list, everyone from that isp will be banned. But that's a crude way to ban someone.
To ban many IP patterns, enter something like "206\.96|206\.95|206\.94", which bans anything from 206.96.*.*, 206.95.*.* or 206.94.*.*
If you go to delete the message, you will be for each post there is something like: 970474783.045a6311 This is a cookie track for the PC the user is using. You can enter this track string into the box for "Delete user ____ ban it X" on the admin panel, check the ban it box, and click on the "Delete user" button, then only this user is banned. For more control, you should enforce registration.
45. .I switched to one of the styles come with AnyBoard package, but the image links are broken, is this a bug?
Only the built-in style has valid image URLs which point to images on icon.anyboard.net. The image URLs of other styles point to images contained mostly images in the anyboard_doc.zip file, you must install those images and adjust the URL accordingly using the configuration tool on the admin panel, most of the images URL are set in the label and emoticon sections of the configuration.
46. How do I convert from another board?
AnyBoard uses a standard file format, MIME. The spefication of the format is at http://netbula.com/anyboard/abformat.html. A converter for wwwboard has been developed, it is a rather straightforward matter to write converters for other forums, using the API in that wwwboard converter.
47. Is it possible to setup a completely private forum?
Yes. AnyBoard can set be set to store all files off the web directory tree. By setting the $off_webroot variable to 1, and set the fix_top_dir to somewhere not in the web directory, and enable require login to read feature, one has to login to see the forum index page and individual messages.
48.My server time is off, how do I adjust it to my time zone?
There is time offset setting in Configure->Style sectio of AnyBoard. You can enter positive or negative values to adjust the time display. You can enter decimal numbers, so even time drift on the server can be corrected.
49. What are the common problems with running Anyboard under Win32?
*) If you are running IIS, then you should set the no_pathinfo variable to 1, and set the fix_ variables.
*) If you are running Apache for Win32, then you should know Apache use the #! for CGI scripts, just like UNIX.
*) Your PERL may be missing some core functions, such as alarm(), crypt and flock(), you must delete the lines which contain the unimplemented functions for AnyBoard to run.
50. On bugtrack, someone posted a security bug on AnyBoard. Is it true?
No. The person who posted the bug had no clue and the bug report was complete bogus. And he actually continued using AnyBoard for a very long time without worrying about the big holes he claimed to exist in AnyBoard. The passwords in AnyBoard are all one-way encrypted just like UNIX passwords using the same crypt() function. One can't get the original password back from the encrypted ones. Also, on systems with permissions set properly, the .forum_cfg file is not readable off the web.
51. I got authentication error when trying to create a new forum.
To create a new forum, you must have the password for the master administrator. You set the master admin login and password during the script install step.
If you have forgotten the password, do this
1) find a file named "config" under the $master_cfg_dir of your installation
2) delete the file
3) re-run the ?cmd=init command to re-create master admin account
4) proceed to create new forum using the newly created master admin.