Page Index Toggle Pages: 1 Print
Instructions: YaBB Install on Mac OSX. (Read 4833 times)
Captain John

Instructions: YaBB Install on Mac OSX.
May 9th, 2008 at 3:46am
Print Post  
Part 1 of 2: This works for all OSX Versions (from 10.2 to 10.5 with Perl 5.8 installed, including OSX Server Editions).

Mac OSX Unix differs slightly from Net/Open/Free BSD Unixes in that Apple has added and taken away a few items and modified the rest. Apple has also tried to make it easy for its users to run webservers with its OSX Server edition, which is nothing more than OSX with a fancy Admin console. The heart of the matter is simple: it makes installing some programs easy and other hard, because there are too many options left open and unresolved (to be explained later).

How ever you get the YaBB files onto your Mac OSX Machine, you have to know where to put them. In Unix/Linux, it is usuallly stored in either a www or htdocs folder/directory. The placement of this directory is usually in the /var directory; with differences being to each different Linux distro. In OSX however, the website files are stored in /Library/WebServer.

From there, there are 2 folders/directories to pay attention to:
(where a website's cgi & perl scripts go to, which is usually referred too cgi-bin folder/directory on most other systems), and
(where the html files go to, usually referred to as htdocs or public_html on most other systems).

To simply install YaBB, open the YaBB Zip file, and go to the cgi-bin folder/directory and copy it into the /Library/WebServer/CGI-Executables folder/directory. Next is to copy the yabbfiles folder/directory from within the public_html to the /Library/WebServer/Documents folder/directory.

The next step is to set the permissions on the YaBB Files and Folder/Directories. I will break this up into 2 parts or cases:

Case 1: Using the Mac OSX GUI/Finder system.
Go to the /Library/WebServer/Documents folder hi-lite the yabbfiles folder. Go to the File Menu and select Get Info. The same thing can be achieved with using the Apple-I key combination. The information box for the folder will open up; you will want to expand on the Ownership & Permissions section, and set the options as follows:
You Can: Read & Write

Owner: (usually you)
Access: Read and Write

Group: (usually you)
Access: Read only

Others: Read only

then press the 'Apply to enclosed Items...' button at the bottom.

Next go to the /Library/WebServer/CGI-Executables folder hi-lite the yabb folder. Go to the File Menu and select Get Info. The same thing can be achieved with using the Apple-I key combination. The information box for the folder will open up; you will want to expand on the Ownership & Permissions section, and set the options as follows:
You Can: Read & Write

Owner: (usually you)
Access: Read and Write

Group: (usually you)
Access: Read and Write

Others: Read and Write

then press the 'Apply to enclosed Items...' button at the bottom.

If you notice, there is no Execution status to be set in the Ownership & Permissions under OSX, this was done to preserve the simplicity of using the Mac system, and in my humble opinion- a dreadful mistake. But for all intents and purposes YaBB should run at this point. Key word is 'SHOULD'. At this point you should be able to access the file from your web browser, and skip Case 2. If not, continue with Case 2

Case 2: Using FTP, Remote Access or Apple File Sharing with a terminal console (ie: Shell access)

Whichever method you use, as in case 1, the yabbfile folder/directory in the public_html folder/directory goes into the Server's /Documents folder/directory, AND the yabb folder/directory goes into the server's /Library/WebServer/CGI-Executables folder/directory. Under Remote Access and Apple File Share, this is pretty straight foward; but for FTP, make sure to set files transfers as TEXT for text and BINARY for everything else.

Now comes the hard part...
Access the Terminal program and access the server (if its not the machine you're on) with ssh@[machine's IP number]. It will as for an account and password. Once you get the prompt, you will need to access the root account by typing SU. Again, it will ask for a password. If its your personal machine or server, typing in your account password should get you in if you are the machine's administrator or main user. If not, you will need to talk with the machine's administrator for the access.

Once you got Root access, type in cd /Library/WebServer [RETURN]
This will get you to the WebServer directory. To verify that you ar there, type ls -la [RETURN]
This should give you the 2 directories that are there: Documents and CGI-Executables.

First lets go to the CGI-Executables by typing cd CGI-Executables.
You will need to set the permissions of the following with the chmod command.

Set the following folders/directories to 777 with the following commands:
chmod -R 777 Boards [RETURN]
chmod -R 777 Messages [RETURN]
chmod -R 777 Members [RETURN]

Set the following folders/directories to 755 with the following commands:
chmod -R 755 Admin [RETURN]
chmod -R 755 Modules [RETURN]
chmod -R 755 Languages [RETURN]
chmod -R 755 Convert [RETURN]
chmod -R 755 Sources [RETURN]
chmod -R 755 Templates [RETURN]
chmod -R 755 Variables [RETURN]
chmod -R 755 Help [RETURN]

The permissions of the files in /Library/WebServer folder/directory are changed with:
chmod 755 *.pl [RETURN]

Then you will need to reset the file permissions with:
chmod 777 [RETURN]

That is it for the yabb folder/directory CGI-Executables folder/directory
Note, on some versions of YaBB, you may have a or something simillar in either the main YaBB folder/directory or in the Sources folder/directory. This file's permissions needs to be set to 777.

Now to set the permissions in the yabbfile in the Documents folder.
Type cd /Library/WebServer/Documents [RETURN]
Then type ls -la [RETURN] and see if yabbfiles is on the list. If its not, you either are in the wrong directory or have not uploaded the yabbfiles folder/directory. Please resolve the situation until you have the yabbfiles folder/driectory in the /Library/WebServer/Documents folder/directory and that you are in the proper folder/directory.
To set the perimmsions in files and folders/directories of the yabbfiles folder/directory, simply type:
chmod -R 755 yabbfiles [RETURN]

Some notes before we continue:

1) chmod -R will change all the permissions of the folders/directories, subfolders/subdirectories and of the files within of folder/directory called.

2) Any file that is run as a script in OSX is to be set to 755 and not 744 or 644. This sets the execution bit to on and allows the script to be accessed as an executable file. Though this is not necessary in other Unix/Linux distributions, it is for Mac OSX. This is why the files in the /Sources and other folders/directories are set to 755 by the chmod -R 755 command.

Now is this all? Yes and No. Yes, for uploading and setting the file permissions into a Mac OSX Webserver. No, as in you still have to run in your browser.

While setting up the paths locations in, make sure to use /Library/WebServer/Documents/yabbfiles and /Library/WebServer/CGI-Executables/yabb instead of the ./  . Mac OSX has some issues with scripts accessing ./ as a directory when it involes many scripts buried in subfolders, especially in busy websites. This situation may have been resolved in OSX 10.5, but I would not try it. It is better to have your YaBB script files follow an absolute path setting instead of a relative one (which what ./ is).

Once the paths and other things are set in the, you should have a YaBB forum running on your system. As proof of this I set up a YaBB 2.2 forum on my OSXserve machine. It is located at

-End of Part 1

Part 2 of 2:

Known Issues:
You may get an internal server error staring you in the face. This is sometimes because the Mac OSX Server can not find the 3 folders/directories inside the Modules folder/directory. If this is the case, you need copy these 3 folders into the /Library/Perl/5.8.x folder/directory, and set their permissions to 555 or Read Only. In truth, I have only seen this in Mac OSX 10.3 and not in 10.4 or 10.5 so this might be a 10.3 only issue.

You should always have your html and other web (including image) files' permissions to 755 or 555. Again, this seems to be a Mac OSX issue and not as general Unix/Linux issue.

Like any other system, Mac OSX has its own little quirks. You as a server owner/user has to know these quirks if you are going be sucessful in doing anything with your system. Once you know these Mac specific issues, can you go forth install almost anything onto a Mac OSX Server running Perl.

Notice, the only thing you did not do was to go into the various files with a text editor and change the location of where Perl resides on the first line. #!usr/bin/perl -- is used as a standard on Mac OSX.

submitted by Elfen
Back to top
IP Logged
Page Index Toggle Pages: 1
  « Board Index ‹ Board  ^Top