Chapter 3. How to configure and use the Phorum Features

Table of Contents

3.1. Global Settings
3.1.1. General Settings
3.1.2. Cache Settings
3.1.3. Ban Lists
3.2. Virtual Roots
3.2.1. What are Virtual Roots?
3.2.2. How do I create a virtual root?
3.3. Phorum Modules
3.3.1. What are Phorum Modules?
3.3.2. How do I install a module?
3.3.3. Modules included in the distribution Announcements BBCode Editor tools Event Logging HTML in posts Send mail through SMTP Simple Text Replacement Smileys Spam Hurdles Tidy Output Username Restrictions

3.1. Global Settings

3.1.1. General Settings

Phorum Title: Enter the title of your forum here. This will be displayed on the index page of your forum.

Phorum Description: A description of your forum. This will be displayed on the index page of your forum. This is also useful from a Search Engine Optimization perspective.

DNS Lookups: If enabled, this instructs forum to perform a DNS lookup on certain items, such as:

  • logging the hostname from which a message was posted, instead of the plain IP address;

  • being able to create IP ban items based on host and domain names;

  • checking the email address that is for user registrations.

Generally this is a useful function for an administrator, and should be left enabled. However, if Phorum keeps reporting illegal email addresses during signup or if you are suffering from massive delays during posting messages, then there might be DNS problems on your server. In that case, disable DNS lookups as a work around.

Hide Forums: If this is enabled, forums which a user does not have the permissions to read will be hidden from them.

Show New Count in Forum List: This feature will show registered users how many new messages and threads there are in each forum on the forum list page. If you have a large number of posts, a large number of forums, a large number of users or some combination of the three, this setting could cause some performance issues. If you see performance issues, try setting it "No count, indicator only" or "No"

Folder/Forum Display Style: Since version 3, Phorum has included folders. Until version 5.1, forums inside folders did not show until you clicked on the folder. In 5.1, the list of forums in a folder can now be shown under that folder in the forum list. This allows admins to organize a large list of forums all on one page.

Enable Moderator Notifications: By setting this to Yes, Phorum will display a notice to the various kinds of moderators when they have a new item that requires their attention. For example, if this setting is enabled, moderators will see a notice whenever there is an unapproved message.

User Post Edit Time Limit: If set to a value larger then 0, this acts as a time limit for post editing. Users will only be able to edit their own posts within this time limit. This only applies if a user has the necessary permissions to edit their post, and does not affect moderators.

Track Edit Changes: When enabled, the changes made to a message will be stored and viewed by users. It can optionaly only be viewed by moderators.

Reply form appears: This setting specifies where the reply form for threads is displayed, either on the read page or on a separate page.

After posting go to: This setting specifies where the user is redirected after posting, either to the message read page or the message list.

After submitting a search query: On large forums or slow servers, searching for messages might take a little while. To prevent users from submitting the same search query over and over again (in case they think the search didn't work, because they didn't get their results fast enough), you can show an intermediate page, telling the user that the search is running. If your system can deliver search results quickly enough, then you can skip the intermediate page and go directly to the search results page.

Database error handling: This setting determines how Phorum handles database errors. The default is to show the errors on screen. "Errors will go to a logfile" is useful if you don't want your users to see the errors, and "Errors will be emailed" is useful if you want immediate notification of any database errors on your forums.

Secret private key for signing data: On several occasions, data is transferred from the Phorum system to the user's system and back again. To be sure that there was no tampering with this data on the way, it is signed by Phorum using this secret key. If you do not understand what this is for, then it is safe to simply keep the pre-configured value.


If you change this key, users who are active right now might experience problems.

Allow Linking to Uploaded Files: You may not want to allow other web sites to link to files that users have uploaded to your forums. If not, then set this option to "Only from the forum". If you want to use links on other parts of your web site, then use "From this web site". If you want to allow other websites to link to your forum file uploads, then select "From any web site".

If your needs are more specific than this (e.g. if you want to allow access from a specific group of web sites), you will need to use your web server's security features to accomplish this. Apache users can reference Prevent "Image Theft" at Users of the cPanel system can also configure this through the "Hotlink Protection" feature.

Put file name in pathinfo for file download URLs: All Phorum file downloads (for user files and forum message attachments) run through the file.php script. As a result, users who right-click a file URL and choose "Save link as .." will end up in their browser with file.php as the default file name. With this option enabled however, Phorum will try to give the browser a real file name instead. This is done by putting the file name in the URL as pathinfo (which makes the download link look like /file.php/downloadfile.ext?1,2,file=3).

The webserver needs to support the use of pathinfo for this feature to work. So if you are unable to download files after enabling this option, your webserver probably lacks pathinfo support and you cannot use this feature.

Phorum HTML Title: This can be used to set the title of your Phorum. Equivalent to changing the HTML title tag.

Phorum Head Tags: This option can be used to provide additional HTML code that will be added to the head section of the pages. This could for example be used for adding meta keywords.

Show and allow feed links: A feed is a standardized format for providing information about new content on a web site. Various programs can be used to process and read feed information (e.g. specialized "feed readers", Firefox, Google's on line feed reader, Thunderbird mail). If you enable this feature, then your visitors will be able to subscribe to feeds for your forums.

Note that feed readers will automatically poll for feed updates using a client side defined time interval, so with a lot of active feed subscriptions, the number of requests to your web server will rise. Phorum uses server side caching of the feed data to keep the server load that is required for supporting feeds to a minimum.

Default feed type: There are multiple standards for providing content feeds. Phorum supports RSS and ATOM, which are the most widely spread XML based feed formats.
If you are unsure what to use, then select "RSS".

HTTP Path: This is the base URL of your Phorum.

Disabled URL: This url will be redirected to when the Phorum status is disabled. If no URL is given, a message in English will be displayed.

Time Zone Offset: If you and/or your users are in a different timezone than the server, you can have the default displayed time adjusted by using this option.

Use Cookies: Phorum can track logged in users by using cookies or session information on URLs.

Use No Cookies: The session information will always be included on the URL.

Allow Cookies: The session information will be stored in cookies, if the user's browser supports it. Otherwise, the information is included in the URL.

Require Cookies: Session information is only stored in cookies. If the user's browser does not support cookies, the user will not be able to log in.

Main Session Timeout (days): When users log in to your Phorum, they are issued a cookie. You can set the timeout value to a number of days that you want the cookies to stay on the users computer. If you set it to 0, the cookie will only last as long as the user has the browser open.

Session Path (start with /):: When cookies are sent to the client's browser, part of the cookies determines the path (URL) for which the cookies are valid. For example, if the URL is, you could set the path to /phorum. Then, the user's browser would only send the cookie information when the user accessed the Phorum. You could also simply / and the cookie info will be sent for any page on your site. This could be useful if you want to use Phorum's login system for other parts of your site.

Session Domain: Usually you can leave this blank. If you know you need to use a different domain (like if you use, you may want to just use as the domain) you may enter it here.

Track User Usage: When set, the last time a user accessed the Phorum will be recorded as often as you have decided upon. This will require constant updates to your database. If you have a busy forum on weak equipment, it may be ill advised to use a short update interval.

Enable Tighter Security: Tight security in Phorum will require that users confirm their login information from time to time before posting messages, accessing private messages or using their Control Center. The length of time is determined by Short Session Timeout.

Short Session Timeout: When tight security is enabled, the users will be issued a second cookie when they type in their login information. If the user does not use the site for the period of time you set here, they will have to re-enter their login information before posting messages, accessing private messages or using their Control Center. They will still be allowed to read the Phorum as long as their Main Session is still good. The time is in minutes. The minimum is 5 minutes; otherwise, your users will be very angry at you.
P.S. 1 day = 1440 minutes

Allow Time Zone Selection: If enabled, this will allow users to change the timezone of the forum (specific to their account).

Allow Template Selection: If enabled, users will find an option in their Control Center to select the template to use.
Note: The user selected template will only be used for forums, which do not have "Fixed Display Settings" enabled in the forum settings.

Registration Verification: This allows you to force users to follow a verification process after registration. You can have them verify either:

  • by email - a link is sent to the user's email address, which they have to click on to activate their account)

  • by moderator - a moderator must approve the user before their account is activated

Or both. This is a useful function to prevent spam, but keep in mind it adds extra hurdles for users trying to register, which could put certain people off.

Enable Drop-down user list: By setting this to Yes, Phorum will display a drop-down list of users instead of an empty text box on pages where you can select a user. Two examples of such pages are when sending a private message, and when adding users to a group in the grou moderation page. This option should be disabled if you have a large number of users, as a list of thousands of users will slow performance dramatically.

What to use as the display name: You can choose to use either the user's username of the real name (which can be edited by the user from the Control Center) as the name which the user is referenced to throughout all Phorum pages.


This is not an option that you normally would want to change on a live system that has been running for a while. One reason is that all stored names will have to be updated in the database (e.g. the posting authors), which can take quite a while on a big forum (it will work though). More important is that you might confuse your users by changing their display names.

Hide Email Addresses: You can choose to set whether all email addresses should be hidden. This includes the email addresses of anonymous users and registered users in their profile. The separate option to hide the email address in the user Control Center will be hidden too.

File Uploads: These settings apply to personal file uploads that users can do in their Control Center. The users can link to these files by copying and pasting the file URLs. Some modules (like the avatar module) also make user of personal files (for example, for storing images that the user can use as the avatar to show). Keep in mind that upload file size is also restricted by the upload size limit of php.ini.
These settings do not control uploading of forum message attachments. For changing message attachment settings, you have to edit the settings of the forum for which you want to enable attachments.

Private Messaging (PM):: If enabled, this will allow users to access/use the private messaging system.

Check for new PM: By settings this to Yes, Phorum will check if a user has new private messages, and display an indicator. On a Phorum with a lot of users and private messages, this may hurt performance. This option has no effect if Private Messaging is disabled.

Maximum number of stored messages: This is the maximum number of private messages that a user may store on the server. The numbr of private messages is the total of all messages in all PM folders combined. Setting this value to 0 will allow for unlimited messages.

Allow notification of PM by email: If this option is enabled, Phorum will send a notification email to users that receive a new private message. The user will find an option in their Control Center which can be used to disable the notification email.

System Emails from Name: This allows you to specify what name system emails are signed by.

System Emails from Address: Specify which email address system emails are sent from.

Use Bcc in emails: This prevents recipients seeing the complete list of recipient addresses. If this is disabled, the system will use CC (carbon copy), so each recipient can see all recipient email addresses.

Ignore admin for moderator emails: If you select Yes for this option, then the moderator notifications and report message emails will not be sent to the administrator, only to moderators.

3.1.2. Cache Settings

Cache Directory: Caching is used to take some load off the database and web server. The cache directory is used for caching preprocessed Phorum templates and for caching data in case "file system based" is selected as the cache layer below.

For most installations, it will be fine to set it to the default temp directory for the server (/tmp on UNIX systems and C:\Windows\Temp for Windows system).

If your server has PHP Safe Mode enabled, you will need to create a directory under your Phorum directory and make it writable by the web server (you can use the directory "./cache" which was included in the Phorum distribution for this purpose). Additionally, if you are running Phorum on a shared server, it is generally advantageous to use the "./cache" directory instead of "/tmp".

Enable Caching stylesheet data (CSS): Phorum uses a system where modules can add data to the main stylesheet for the pages. By enabling this feature, Phorum can cache the dynamically generated data and improve caching of the stylesheet data in the browsers of your visitors. Enabling this feature is highly recommended. Only disable it if you are having problems with it.

Enable Caching JavaScript code: Phorum uses a system where modules can provide JavaScript code for the pages. By enabling this feature, Phorum can cache the dynamically generated data and improve caching of the JavaScript data in the browsers of your visitors. Enabling this feature is highly recommended. Only disable it if you are having problems with it.

TODO: which data to cache/cache layer

3.1.3. Ban Lists

Ban items can be used to deny new user registrations and posting of (private) messages, based on various criteria. If a ban item applies to a user action, then this action will be fully blocked by Phorum. This can for example be used to block user registrations and postings from certain IP addresses or to prevent certain words from being used in forum messages.

If you want to fully ban a user, then it's best to set "Active" to "No" for the user in the "Edit Users" interface.