Server
    • 19 Oct 2022
    • 12 minutes to read

    Server


    Article summary

    By going to Quick-access menu > Server you can control various aspects of your site's setup through the settings and options detailed below. 

    System paths

    The system paths page includes the following options:

    SettingDescriptionNotes

    GD version

    GD is a graphics library that manipulates graphics. It’s used to create thumbnail images from uploaded files and other graphics on the fly. If you don’t know what version is installed, leave this on the original setting.

    -

    Path to zip and unzip

    If you are running Totara on a Unix or Unix-like server (Linux, Solaris, BSD, Mac OS X), you may need to specify where the ZIP program is located. Zip and unzip are used to compress and decompress ZIP archives such as the backup folder.

    -

    Path to aspell

    To use spell checking within the HTML editor, you must have aspell 0.50 or later (http://aspell.net/) installed on your server. You must also specify the correct path to access the aspell binary.

    -

    Support contact

    A Site Administrator can specify a support name, email, and/or support page in Quick-access menu > Server > Support contact to be included in the account confirmation email.

    When a user changes the email address in their profile a confirmation email is sent from the primary administrator of the site, rather than from the support email.

    Session handling

    The session handling page includes the following options:

    SettingDescriptionNotes

    Use database for session information

    If enabled, this setting will use the database to store information about current sessions. If you change this setting it will log out all current users (including you). If you are using MySQL please make sure that max_allowed_packet in my.cnf (or my.ini) is at least 4M. Other session drivers can be configured directly in config.php

    -

    Timeout

    Once someone logs in to your Totara server, the server starts a session. The session data allows the server to track users as they access different pages. If users don’t load a new page during the amount of time set here, Totara will end their sessions and log them out.

    Be sure this time frame is long enough to cover the longest test your trainers may offer. If learners are logged out while they are taking a test, their responses to the test questions may be lost.

    Cookie prefix

    Most of the time you can leave this blank, unless you are running more than one Totara site on the same server. In this case, you will want to customise the name of the cookie each Totara site uses to track the session. This enables you to be logged in to more than one Totara site at the same time.

    If you change the cookie prefix you will need to log in again, as the change takes effect immediately.

    Cookie path

    If you need to change where browsers send the Totara cookies, you can change this setting to specify a subdirectory of your web site. Otherwise leave this as the default.

    -

    Cookie domain

    This allows you to change the domain that the Totara cookies are available from. This is useful for Totara customisations (e.g. authentication or enrolment plugins) that need to share Totara session information with a web application on another subdomain. 

    It is strongly recommended to leave the Cookie domain setting at the default (empty), as an incorrect value will prevent all logins to the site.

    Statistics

    If you enable site statistics, Totara will gather information on the number of hits there have been on each course as well as the site as a whole. Statistics do not show how many distinct users they have been. This data will be displayed in both table and graph format by date.

    A Site Administrator can enable statistics via the quick-access menu under Server > Statistics.

    SettingDescriptionNotes

    Maximum processing interval

    Use the dropdown menu to select how far back the logs should be processed the first time the cron job attempts to process statistics. If you have a lot of traffic and are on shared hosting, it's probably not a good idea to go too far back, as it could take a long time to run and be quite resource intensive. Note that for this setting, 1 month = 28 days. In the graphs and reports generated, 1 month = 1 calendar month.

    -

    Maximum runtime

    Specifies the maximum time allowed to calculate the statistics for one day, bearing in mind that statistics processing can put a big load on the server. The maximum number of days processed in one cron can be specified below.

    -

    Day to process

    Specifies the maximum number of days processed in each statistics execution. Once the statistics are up to date, only one day will be processed, so adjust this value depending of your server load, reducing it if shorter cron executions are needed.

    Set the stats processing to start an hour before your automated course backups are scheduled to start, then set the maximum runtime to one hour. This ensures that stats are not being processed at the same time as course backups are being made.

    User Threshold

    This setting specifies the minimum number of enrolled users for a course to be included in statistics calculations.

    -

    HTTP

    A Site Administrator can change the HTTP settings via Quick-access menu > Server > HTTP in the quick-access menu. Click Save changes to save any setting changes before leaving the page.

    SettingDescriptionNotes

    Slash arguments

    The setting Use slash arguments should always be enabled. Slash arguments (using PATH_INFO) is required for SCORM packages and multiple-file resources to display correctly. If your web server doesn't support slash arguments and you are unable to configure it, this setting can be temporarily disabled, though it will result in things not working.

    Disabling the use of slash arguments will result in SCORM packages not working and slash arguments warnings being displayed.

    Reverse proxy

    If your server is behind a reserves proxy you can use Logged IP address source to specify which HTTP headers can be trusted to contain the remote IP address. The headers are read in order, using the first one that is available.

    -

    Web proxy

    Your Totara server may need to access the internet through a proxy server, depending on your network configuration. If you're not sure about whether you need a proxy server, contact your network administrator.

    Fill in the below fields if your Totara server is unable to access the internet directly. Internet access is required for download of environment data, language packs, RSS feeds, time zones, etc.

    • Proxy host: If this server needs to use a proxy computer (e.g. a firewall) to access the Internet, then provide the proxy hostname here. Otherwise leave it blank.
    • Proxy port: If this server needs to use a proxy computer, then provide the proxy port here.
    • Proxy type: Type of web proxy (PHP5 is required for SOCKS5 support).
    • Proxy username: Username needed to accessinternet throughproxy if required, empty if none.
    • Proxy password: Password needed to accessinternet throughproxy if required, empty if none.
    • Proxy bypass hosts: Comma-separated list of (partial) hostnames or IPs that should bypass proxy (e.g., 192.168., .mydomain.com)

    PHP cURL extension is required.

    Maintenance mode

    Maintenance mode is for preventing any users other than Site Administrators from using the site while maintenance is taking place.

    When users attempt to access content while your site is in maintenance mode, they receive a message informing them that the site is in maintenance mode. If you wish, you can create a customised maintenance mode message, perhaps stating when the site will be available again or giving the reason for doing maintenance.

    The front page of your site will appear as normal when your site is in maintenance mode. Users will only see the maintenance mode message when they attempt to access content, such as courses.

    To put your site in maintenance mode, follow these steps:

    1. Go to Quick-access menu > Server > Maintenance mode.
    2. Click the Enable button.

    An alternative way of putting your site in maintenance mode (for example if you’re unable to access the web interface) is to create a file called maintenance.html and save it in the folder called 1 in your totaradata folder. A customised maintenance mode message can be entered in the maintenance.html file.

    If you wish to give access to users other than Site Administrators when in maintenance mode (perhaps for testing) then you can enable the capability Access site while in maintenance mode (site:maintenanceaccess) in the system context for a role. This will allow access to the site when $CFG->maintenance_enabled is turned on. 

    Cleanup

    The size of specific tables in the database can be controlled by setting appropriate limits in the under Quick-access menu > Server > Cleanup.

    The cleanup page contains the following options:

    SettingDescriptionNotes

    Delete not fully setup users after

    If you are using email authentication, this is the period within which a response will be accepted from users. After this period, old unconfirmed accounts are deleted.

    -

    Delete incomplete users after

    After this period, old accounts that were not fully set up will be deleted.

    -

    Delete course completion logs after
    Course completion logs will be deleted after the selected number of years. Once deleted, these logs will no longer show as transaction history in the course completion editor. You can use this setting if you wish to reduce the database size.
    Only course completion transaction history logs are deleted - this does not affect course completion records (current or historical). Please be aware that if manual changes are made to course completions or the course completion history, deletion of logs will mean that it's not possible to track who made changes and when.

    Disable grade history

    Disable history tracking of changes in grade-related tables. This may speed up the server a little and conserve space in database.

    -

    Grade history lifetime

    This specifies the length of time you want to keep history of changes in grade-related tables. It is recommended to keep it as long as possible. If you experience performance problems or have limited database space, try to set a lower value.

    -

    Clean up temporary data files older than

    Remove temporary data files from the data folder that are older than the selected time.

    -

    Environment

    The environment page enables you to check that your server meets all system requirements for your current and future versions of Totara.

    Check that the status is okay for all of the server requirements.

    Unicode

    Totara uses the Unicode character encryption system. The UTF-8 encoding form is used to support multiple languages, as well as special characters used in science and mathematics. You can read more about Unicode on the Unicode consortium's website.

    PHP information

    The PHP information page provides information on the version of PHP your server is running, including PHP compilation options and extensions, server information, and the PHP environment and OS version information.

    Cron

    The Totara cron process is a PHP script (part of the standard Totara installation) that must be run regularly in the background. The Totara cron script runs different tasks at differently scheduled intervals.

    Do not skip setting up the cron process on your server for your Totara site. Your site will not work properly without it.

    A special program is used to run the Totara cron script at a regular interval. The Totara cron script runs tasks include sending mail, updating Totara reports, RSS feeds, activity completions, posting forum messages, and other tasks. Since different tasks have different schedules, not every task will run in Totara when the cron script is triggered.

    The cron program (that runs the Totara script) is a core part of Unix-based systems (including Linux and OSX) being used to run all manner of time-dependent services. On Windows, the simplest solution is to create a task in the Windows Task Scheduler and set it to run at regular intervals. On shared hosting, you should find the documentation (or ask support) how cron is configured.

    Essentially, the task involves adding a single command to the list of cron activities on your system. On Unix-based systems this list is a file called a crontab, which all users have.

    The Totara cron command

    Totara has two different ways to deploy cron, using different scripts within the Totara install. These are as follows:

    • The CLI (command line interpreter) script: This will be at the path /path/to/Totara/admin/cli/cron.php. If in doubt, this is the correct script to use. This needs to be run by a PHP CLI program on your computer. So the final command may look something like /usr/bin/php /path/to/Totara/admin/cli/cron.php. You can (and should) try this on your command line to see if it works.
    • The web-based script: This needs to be run from a web browser and will be accessed via a web URL similar to http://your.totara.site/admin/cron.php. You can find command line-based web browsers (e.g. wget), so the final command may look like /usr/bin/wget http://your.totara.site/admin/cron.php. This has the advantage that it can be run from anywhere. If you can't get cron to work on your machine, it can be run somewhere else.

    Finding the right place to put the command

    This really does depend on the system you are using, and you should find and read the documentation for your platform or hosting. In most cases, getting the Totara cron to run consists of establishing the correct command (above) and then adding it, and the time to run the command, to some sort of file. This might be either through a specific user interface or by editing the file directly.

    If using the CLI version you also need to make sure that the cron process is run as the correct user. This is not an issue with the web version.

    Example: Installing cron on Ubuntu/Debian Linux. Assuming logged in as root:

    Use the crontab command to open a crontab editor window for the www-data user. This is the user that Apache (the web server) runs as on Debian-based systems.

    $ crontab -u www-data -e

    This will open an editor window. To run the clicron script every 15 minutes, add the line:

    */15 * * * * /usr/bin/php /path/to/Totara/admin/cli/cron.php >/dev/null

    Note that the final >/dev/null sends all the output to the 'bin' and stops you getting an email every 15 minutes.

    Performance

    The Performance page (under Server > Performance) contains a variety of settings that can be used to optimise the performance of your site.

    SettingDescriptionNotes

    Extra PHP memory limit

    Some scripts such as search, backup/restore, or cron require more memory, so it is therefore recommended to set higher values for large sites.

    -

    Maximum time limit

    This setting is used to restrict the maximum PHP execution time that Totara will allow without any output. To use the default restrictions, enter 0. If you have a front-end server with its own time limit, set this value lower to receive PHP errors in logs. Does not apply to CLI scripts.

    -

    cURL cache TTL

    Time-to-live for cURL cache, in seconds.

    -

    Bitrate to use when calculating cURL timeouts (Kbps)

    This setting is used to calculate an appropriate timeout during large cURL requests. As part of this calculation, an HTTP HEAD request is made to determine the size of the content. Setting this to 0 disables this request from being made.

    -

    Cache top navigation

    Higher values improve performance, but some changes in menu structure may be delayed.

    -

    Can't find what you're looking for? Contact us at documentation@totara.com. Alternatively, book a call to have a chat about your Totara platform with a dedicated Customer Success Manager.

    © Copyright 2024 Totara Learning Solutions. All rights reserved. Some content originally obtained via GPLv3 license and continues to be available under GPLv3. All other content is the sole copyright of Totara Learning Solutions. 

    Was this article helpful?

    What's Next
    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.