HTML Logo by World Wide Web Consortium ( Click to learn more about our commitment to accessibility and standards.

Moving forward with Composr

ocPortal has been relaunched as Composr CMS, which is now in beta. ocPortal 9 will be superseded by Composr 10.

Head over to for our new site, and to our migration roadmap. Existing ocPortal member accounts have been mirrored.

ocPortal Tutorial: Basic Installation

Written by Allen Ellis, ocProducts
Before you begin using ocPortal, you will need to install it. Installing ocPortal is easy with our installation utility, which will be explained in detail in this tutorial. If you prefer ocProducts can install ocPortal for you. You can also install with just a few clicks if your web host has Softaculous or Installatron installed.


Before you install ocPortal, you will need to make sure that your host covers our minimum requirements, and a general knowledge of web applications will also help you, but is not required. You also need the following information from your web host, if you don't already.
  • FTP hostname
  • FTP username
  • FTP password
  • mySQL hostname
  • mySQL database name
  • mySQL username
  • mySQL password
Typically you can set these up yourself in your 'Web hosting control panel' (e.g. Plesk, cPanel, Ensim, or whatever else your webhost has provided to you to control your web hosting).

ocPortal does not need its own database (i.e. it can share one), but if you are able to create a new one it is often preferable for reasons of tidyness. The database user needs full read/write/administer access over the database ocPortal will be installed in. Sometimes you set this access by ticking (checking) to have all permissions on your user. Sometimes you do it by setting the 'User role' to something such as 'dba' (e.g. h-sphere on Windows).

Similar products require the same information.

If you would like to use a 3rd party forum system for your website, we require that you install that before installing ocPortal.

Deciding: Quick or manual install

At some point you'll need to decide which method you'd like to use to install ocPortal. You have two options, the quick installer, or the manual installer.

We highly recommend choosing the quick installer. This is a simple process, where you upload two files to your web server, then launch our installation utility from there. It works on most servers.

The second option is the manual installer. This option requires you to manually upload all of ocPortal's files and apply permissions to them – the typical method for most CMS systems. This method takes much longer – as there is a pause for "handshaking" between each file. We maintain this version in case the quick installer fails on your host (e.g. if the host does not support FTP or SuExec in the way the quick installer needs).

Preparing files

Thumbnail: Example of "Download Now" link

Example of "Download Now" link

To install ocPortal, you must first download it from our web site ( It is generally best to choose the latest version, and, as stated above, we also recommend choosing the "quick method".

Download ocPortal from our website. Save it to a location where you'll be able to find it.

After it downloads, you'll need to extract the files. The exact methods for doing this will vary based on which zip utility you use.

Using FTP

Thumbnail: File upload demonstration

File upload demonstration

Thumbnail: Internet Explorer FTP login

Internet Explorer FTP login

The next step is to upload the files to your web server. To do this you'll need an FTP client (such as SmartFTP or CuteFTP, or use the one that comes with Windows). The exact steps to upload the files depend slightly depending on which FTP client you choose.

If you'd like to use the one bundled with windows, open a new Internet Explorer window, and in the address bar, type, replacing username with your username and servername with the servername given to you by your web host. You should be presented with a login screen (if not, you can access it by choosing File > Login As), where you can enter the username and password given to you by your web host [Example ]. Then you'll need to navigate to your webroot (possibly in a folder called www or httpdocs). If you can't find your webroot, email your webhost for help.

At this point you need to decide whether you want your website to reside in your root folder or not. If you choose to place it in your root folder (which is the recommended option), people will be able to access your site by going to (unless you don't own your own domain name). If you choose to place it in a subfolder (for example, "subfolder"), people will access your ocPortal installation by going to

When you successfully connect, find your webroot, and navigate into a subfolder if you chose to, you need to upload the files that were inside the zip package you downloaded. If you chose the quick installer, these files are called 'install.php', the other is called 'data.ocp'. If you chose the manual installer, there will be many more.

Regardless whether or not you chose to make a new subfolder, you need to put these files in the same folder. This can usually be done by dragging and dropping the files from your computer to your web host in your FTP client [Example ]. If your FTP client presents a choice of whether to upload in 'Binary' or 'ASCII'/'Text' mode, choose 'Binary' mode.



Note for Linux-server users: If you are on a suexec-system (where the PHP script is run as your own user), the default 744 and 644 permissions should be suitable (with info.php being 600 for additional security). The installer will tell you if you are on a suexec-system, otherwise assume you are not and you still will need to set the permissions.


Note for Windows-server users: Permission setting can be complex and is discussed in depth in the advanced installation tutorial. You may be able to avoid setting any permissions at all though.
If you chose the manual installer, you now need to set the appropriate permissions for your files and folders (read on). You usually do not need to set any permissions if you chose the quick installer.

If you have "shell access" (ask your web host if you don't know), then you can automatically set these permissions by logging into your server with a program like putty, and executing the file

If you don't have shell access, then you will need to manually set each folder to the correct permissions.

Here are the directories that need file permissions setting:

Thumbnail: Tick (check) the highlighted boxes for all the files/folders listed to the left. This screenshot was taken on a Mac using Cyberduck, but the process is similar for other software. Usually to get to a screen like this you right-click on a file/folder and choose something like 'Properties'.

Tick (check) the highlighted boxes for all the files/folders listed to the left. This screenshot was taken on a Mac using Cyberduck, but the process is similar for other software. Usually to get to a screen like this you right-click on a file/folder and choose something like 'Properties'.

Set the following to 777: (full directory permissions)
  • adminzone/pages/comcode_custom
  • adminzone/pages/comcode_custom/<for-each-language>
  • adminzone/pages/html_custom/<for-each-language>
  • adminzone/pages/html_custom
  • cms/pages/comcode_custom
  • cms/pages/comcode_custom/<for-each-language>
  • cms/pages/html_custom/<for-each-language>
  • cms/pages/html_custom
  • collaboration/pages/comcode_custom
  • collaboration/pages/comcode_custom/<for-each-language>
  • collaboration/pages/html_custom/<for-each-language>
  • collaboration/pages/html_custom
  • data_custom/modules/chat
  • data_custom/modules/admin_stats
  • data_custom/modules/admin_backup
  • data_custom/spelling
  • data_custom/spelling/personal_dicts
  • exports/backups
  • exports/file_backups
  • exports/addons
  • forum/pages/comcode_custom
  • forum/pages/comcode_custom/<for-each-language>
  • forum/pages/html_custom/<for-each-language>
  • forum/pages/html_custom
  • imports/addons
  • lang_cached
  • lang_cached/<for-each-language>
  • lang_custom
  • lang_custom/<for-each-language>
  • pages/comcode_custom
  • pages/comcode_custom/<for-each-language>
  • pages/html_custom/<for-each-language>
  • pages/html_custom
  • persistent_cache
  • safe_mode_temp
  • site/pages/comcode_custom
  • site/pages/comcode_custom/<for-each-language>
  • site/pages/html_custom/<for-each-language>
  • site/pages/html_custom
  • text_custom
  • text_custom/<for-each-language>
  • themes/map.ini
  • themes/<for-each-theme>/theme.ini
  • themes/<for-each-theme>/css_custom
  • themes/<for-each-theme>/images_custom
  • themes/<for-each-theme>/templates_custom
  • themes/<for-each-theme>/templates_cached
  • themes/<for-each-theme>/templates_cached/<for-each-language>
  • themes/default/templates_cached
  • tmp (this is a folder needed only by the quick installer – and you will need to make it and set permissions immediately or wait until the quick installer makes it and then fails due to lack of permissions on it)
  • uploads/attachments
  • uploads/attachments_thumbs
  • uploads/auto_thumbs
  • uploads/banners
  • uploads/catalogues
  • uploads/downloads
  • uploads/filedump
  • uploads/galleries
  • uploads/galleries_thumbs
  • uploads/grepimages
  • uploads/incoming
  • uploads/iotds
  • uploads/iotds_thumbs
  • uploads/ocf_avatars
  • uploads/ocf_cpf_upload
  • uploads/ocf_photos
  • uploads/ocf_photos_thumbs
  • uploads/personal_sound_effects
  • uploads/watermarks
  • uploads/website_specific

Set the following to 666: (full read/write permissions)
  • data_custom/errorlog.php
  • data_custom/fields.xml
  • data_custom/breadcrumbs.xml
  • data_custom/functions.dat
  • data_custom/modules/chat/chat_last_msg.dat
  • data_custom/modules/chat/chat_last_event.dat
  • data_custom/permissioncheckslog.php (if it exists)
  • info.php
  • ocp_sitemap.xml
  • ocp_news_sitemap.xml

Remember – if you chose the quick install option, it's likely that none of these permission settings are required.


Thumbnail: The ocPortal installation screen

The ocPortal installation screen

After you upload these files, you've completed the hardest part of the installation. The next step is to open your web browser and go to (substitute '' as appropriate for your domain and install path). You should be greeted with a welcome screen, asking you which language you would like to use.

On step two, you are shown a license agreement. You must agree to the license agreement before you can install ocPortal. You also have the opportunity to sign up for our newsletter, which will notify you by email of any updates to our software. ocPortal will never sell or rent your email address to a third party. You can read our privacy policy for more information.

On step three, you are presented with a choice to choose which forum system you would like to use for your website. We recommend that you use ocPortal's own forum (OCF), which if chosen will be installed at the same time as ocPortal. If you're using a third-party forum software, then you will need to already have it installed. Select the name of the software on the left, and then choose the appropriate version from the right-hand column.

If you would like your website to be one of many on one network, you can choose the option to install a multi-site-network. Read our multi-site-network tutorial for more information on this feature, and to decide whether or not you would like to use it.

Thumbnail: Step 4: primary configuration

Step 4: primary configuration

On step 4 is where the core configuration settings are input. Fill out each of the configuration options to the best of your knowledge. If you chose the "No forums or members" option or the "ocPortal's own forum" choice, you will be presented with fewer options than shown in our example.

If you are not installing any forum system, the "password" field near the top is the password that will allow you to access your Admin Zone (with the username "admin"). There are no constraints on the kind of password to use, but it is a good idea to choose one that won't easily be guessed and does not appear directly in a dictionary.


Pick a password that's easy to remember, yet difficult for others to guess
However, if you are installing a forum system, the password you choose here is still important, as it will be the exclusive password that allows you access to our "environment editor" – a special section of ocPortal where you can change database and host names – useful if there is ever a critical error with your website.

All of the database fields should be filled out with the information given to you by your webhost. If you would like to tweak the cookie settings, you can click the "Cookie Settings" link to open up several more options. Each other option is explained in detail on the configuration page, thus is will not be repeated here. When you finish, click the "Install ocPortal" link at the bottom of the screen.

Thumbnail: Step 5: success message

Step 5: success message

Hopefully, at this point you'll receive this success message. If you receive any errors, return to the previous page and correct them. Click the "Proceed" button to continue through the installation. There will be 4 more similar screens until you finish the installation.

Thumbnail: Final screen

Final screen

After you finish the installation, you are presented with one final screen, congratulating you on your successful installation, and giving you two choices – you can either jump right to your new homepage, or go to the Setup Wizard. If you have never used ocPortal before, we suggest that you run the Setup Wizard, as it will guide you through the basic settings of your website and familiarise you with the way ocPortal works.

Congratulations on your successful installation!


Administrative password
The administrative password is a special password that will help you restore settings if something makes the traditional ocPortal interface unusable.
Multi-site networks (M.S.N.)
Multi-site networks allow you to have more than one ocPortal installation (multiple websites), all running on the same network. If you choose this, members who join one website will also have registrations at other sites.

See also