Configuration file

From Group-Office Groupware and CRM Documentation
Jump to: navigation, search

The values described here can be put in your config.php file as $config['varname']='value'; The file can be located in:

  1. /etc/groupoffice/config.php
  2. /etc/groupoffice/<APACHE SERVER_NAME>/config.php
  3. The Group-Office directory or any of it's parent directories.

For most users it's not necessary to edit this file though. The installer sets most values.

Config file settings lists

General settings

Name Default Description
enabled true Enable the Group-Office installation
id "groupoffice" Group-Office server ID
theme "Group-Office" Default theme.
allowed_modules "" Comma separated list of allowed modules. Leave empty to allow all modules.
html_editor_font "font-size:13px; font-family:Arial, Helvetica, sans-serif;" The font used in all HTML editor including the E-mail editor.
tcpdf_font "dejavusans" The default font to be used in the generated PDF files. Change to "helvetica" for lighter PDF's but you'll lose UTF-8 support. See for more info:
tcpdf_ttf_font null If you generated a TTF font yourself you can use this config to set it.
tcpdf_font_size 9 The default font size to be used in the generated PDF files.
full_url Auto generated Full URL to reach Group-Office with slash on end. This value is determined automatically if not set in config.php.
host "/groupoffice/" Relative hostname with slash on both start and end.
webmaster_email "" The email address of the webmaster.
noreply_email "" An email address that will be used for sending automated system emails (Like: mail reminders etc. ).
root_path "" The path to the root of Group-Office with trailing slash.
tmpdir "/tmp/" The path to store temporary files with trailing slash.
checker_interval 120 The amount of seconds before Group-Office will check for new mail or other notifications. (since 4.1.45)
zlib_compress true Enable zlib compression for faster downloading of scripts and css
nav_page_size "50" The number of items displayed in the navigation panels (Calendars, addressbooks etc.) Don't set this number too high because it may slow the browser and server down.
curl_proxy "" If you are behind a proxy you can set it here for all CURL operations Group-Office performs.
default_max_rows_list "30" The default page size of lists.
callto_template "callto:{phone}" Template of "Callto: link".
upload_quickselect true Opening the file select dialog in the upload-dialog automatically can be disabled when setting this to false.
logout_url If set, Group-Office will redirect to this URL after logout.
encode_callto_link false Enable encoding of the special characters in the phone number of the callto links.
files_show_addressbooks true Show the addressbooks folder in the files tree.
files_show_projects true Show the projects folder in the files tree.
init_script null Set to path to script to include on GO::init()
remember_login true Show the remember login checkbox in the login dialog. (Available in GO 6.2.33 and higher).
login_message null Displays a HTML message on the login screen

Look and feel settings

Name Default Description
title "" Title of Group-Office
help_link "" The link in menu help -> contents.
support_link If the pro version is installed it defaults to the Intermesh support system The link or e-mail address in menu help -> contents.
report_bug_link "" The link in menu help -> report a bug. You can change this to either an email-address or an url
favicon "" relative URL to a custom favicon file
custom_css_url "" Relative URL to a custom CSS url

Calendar settings

Name Default Description
calendar_tasklist_show 0 Display the tasks in the calendar on due date or entirely [0=entirely, 1=start date, 2=due date]
calendar_disable_publishing 0 Disable calendar publishing options
calendar_autolink_participants true Will link the event to every participants except for the organizer

Password settings

Name Default Description
allow_password_change true Enable password changing by users
password_validate true Enable password validation (for strong passwords options below)
password_min_length "6" Minimum required password length
password_require_uc true Require an uppercase characters
password_require_lc true Require a lowercase characters
password_require_num true Require a number
password_require_sc true Require a special char
password_require_uniq "3" Required number of unique characters
default_password_length "6" Length of the password generated when a user uses the lost password option.
disable_security_token_check false Disable security check for cross domain forgeries.
force_ssl false Force an HTTPS connection in the main /index.php
session_inactivity_timeout "0" Automatically log a user out after n seconds of inactivity.
force_password_change 0 The amount of days before a password change is forced to the user, When set to 0 this function is disabled. (Available in GO 6.2.34 and higher).

Localization settings list

Name Default Description
language "en" Default language
default_country "NL" Default country
default_vat "21" Default VAT percentage
default_timezone "Europe/Amsterdam" Default timezone
default_currency "€" Default currency
default_date_format "dmY" Default date format
default_date_separator "-" Default date separator
default_time_format "G:i" Default time format
default_sort_name "last_name" Default name formatting and sorting. Can be last_name or first_name.
default_first_weekday "1" Default first day of the week: 0=sunday 1=monday.
default_decimal_separator "," Default decimal separator for numbers.
default_thousands_separator '.' Default thousands separator for numbers.
default_text_separator ';' Default text separator for import and export.
default_list_separator '"' Default list separator for import and export.
locale_all default is your server's php locale Locale setting for Group-Office command line calls, for example "en_US.UTF-8" or "nb_NO.UTF-8". Set this to a UTF-8 locale if special characters cannot be used in command line calls. Run "locale -a" to see your server's available locales and run "locale" to see your system default settings.

User settings list

Name Default Description
allow_themes true Enable theme switching by users
allow_profile_edit true Enable profile editing by every user through the settings dialog
allow_duplicate_email false Allows email addresses to occur more than once over the user profiles
max_users 0 The maximum number of users.
limit_usersearch 0 If set, user queries will only return this maximum number of users. Useful in large environments where you don't want users to scroll through all.
register_user_groups "" If set, new users will be added to the given groups automatically on creation. This needs to be a comma separated string of group names.
register_visible_user_groups GROUP_EVERYONE This is a comma separated list of group names where new users are automatically visible to.

User group settings list

Name Default Description
group_root "1" The "Administrators" user group ID
group_everyone "2" The "Everyone" user group ID
group_internal "3" The "Internal" user group ID

Debugging and logging settings list

Name Default Description
debug false Run Group-Office in debug mode. This will log much info to /home/groupoffice/log/debug.log and will use uncompressed javascripts. You can also enable this as admin in Group-Office by pressing CTRL+F7. It may dramatically slow down your system, observed with /home/groupoffice mounted via NFS.
debug_log false Just enable the debug log. See debug.log in your Group-Office log folder.
debug_email "" Option to make sure all outgoing emails will be send to the given email address. This is useful when debugging Group-Office and when you don't want to send unwanted emails to active customers. Example: ""
debug_usernames "" Comma separated list of usernames, e.g.: 'admin,john,mary'. For these users, debug mode will be on.
log_max_days 14 Set the number of days the database log will contain until it will be dumped to a CSV file on disk. The log module must be installed.
firephp false Enable FirePhp
info_log "" Info log location. eg: "<file_storage_path>/log/info.log" This logs all logins and logouts. If set empty ("") it will disable this log.
file_log array() Will write all logged data of an object to a file in <file_storage_path>/log/<filename>. Leave empty to disable this log. Key of the Array is the object name Value is the filename. Multiple items can be logged (to the same file) Example: array('GO\\Files\\Model\\File'=>'file.log')
syncml_debug_level 0 The higher you set it the more info you get in /home/groupoffice/log/syncml.log
syncml_debug_users array() If set then the syncml server will only log debug info for these users

Database settings list

Name Default Description
db_host "" The host of the database
db_name "" The name of the database
db_user "" The username to connect to the database
db_pass "" The password to connect to the database
db_port "3306" Specifies the port number to attempt to connect to the MySQL server.
db_socket "" Specifies the socket or named pipe that should be used.
db_auto_increment_increment 1 Useful in clustering mode. Set to the number of clustered nodes.
db_auto_increment_offset 1 Give each node an incremented number.

Filesystem settings

Name Default Description
file_storage_path "/home/groupoffice" The path to the location where the files of the file browser module are stored. This path should NEVER be inside the document root of the webserver. This directory should be writable by apache. Furthermore, choose a partition that has enough diskspace.
convert_utf8_filenames_to_ascii false Convert non ASCII characters to ASCII codes when uploaded to Group-Office. Useful for Windows servers that don't support UTF8.
max_file_size 10000000 The maximum file size that the file browser may upload. Note that the php.ini file must be set accordingly (
max_thumbnail_size 10 The maximum file size of an image to be allowed for thumbnailing in MBs
max_file_versions 3 Maximum number of old file versions to keep. -1 will disable versioning. 0 will keep an infinite number of versions (Be careful!).
file_create_mode "0644" The permissions mode to use when creating files
folder_create_mode "0755" The permissions mode to use when creating folders
file_change_group "" Sets Group-Office files to this file system group.
filesearch_tesseract_lang "" Language to use when using OCR. Install tesseract-ocr-* for the lang. eg. tesseract-ocr-nld and set this value to "nld" for dutch. Or use "nld+eng" for both Dutch and English
filesearch_direct_index false Set to true to index new files immediately. Not recommended as it can stress the server while it's live!
filesearch_index_timeout 5m Maximum time an index operation may take to index one file. See linux timeout command
quota 0 The maximum number of Bytes this Group-Office installation may use. 0 will allow unlimited usage of disk space.
default_diskquota 1000 The maximum number of MB a new Group-Office user will be able to use. This can be changed per user after creating it. Empty means unlimited disk space (Option is NOT yet released)
files_disable_filesystem_sync false Disable filesystem synchronization from the web interface. It can cause timeouts and high server load on large installations. If you don't modify the filesystem externally it should not be required anyway.
zip_max_file_size 256000000 The limit of the max filesize of files that may be zipped can be set with this configuration parameter (Available in GO 6.1.33 and higher).
webdav_auth_basic false By default the webdav server uses digest auth. Some clients don't work properly (owncloud) with digest auth. Set this to true to use basic auth.

Email settings list

Name Default Description
smtp_server "localhost" The SMTP host to use
smtp_port "25" The SMTP port to use
smtp_username "" The SMTP username for authentication (empty for no authentication)
smtp_password "" The SMTP password for authentication
smtp_encryption "" Leave blank or set to "tls" or "ssl"
smtp_local_domain "" The Swift mailer component auto detects the domain you are connecting from. In some cases it fails and uses an invalid IPv6 IP like ::1. You can override it here.
swift_qp_dot_escape false A special Swift preference to escape dots. For some buggy SMTP servers this is necessary.
email_disable_aliases false Set to true to prevent users from changing their e-mail aliases in the email module.
disable_imap_capabilities "" We stumbled upon a dovecot server that crashed when sending a command using LIST-EXTENDED. With this option we can workaround that issue.
restrict_smtp_hosts "" A comma separated list of smtp server IP addresses that you want to restrict. E.g. ","; will restrict those IP's to 10 e-mails per day.
max_attachment_size 20971520 The maximum summed size of e-mail attachments in a message in bytes Group-Office will accept. Please be aware that the SMTP server has size limits too.
smime_root_cert_location Specifies the name of a file containing a bunch of extra certificates to include in the signature which can for example be used to help the recipient to verify the certificate that you used. See also
smime_sign_extra_certs Include extra certificates for signing.
email_autolink_contacts false EXPERIMENTAL. Will link ALL e-mails to contacts automatically when sending mails.
email_autolink_companies false EXPERIMENTAL. Will link ALL e-mails to also to contact->company automatically when sending mails.
email_enable_labels false EXPERIMENTAL. Enable labels in email
email_max_labels 10 EXPERIMENTAL. Max amount of email labels the can be made
mailing_messages_per_minute 5 The number of messages sent by a newsletter per minute (We intentionally set this so low to avoid being blacklisted)
imap_sort_on_date false When the imap server does not support server side sort, the default is to sort on ARRIVAL, set this to true to change that sort flag to R_DATE or DATE (Usually used for Microsoft Exchange Mailservers)
spam_folder "Spam" The name of the folder to move spam messages to when using the functions to move messages to the spam folder. Prefixes:When your mailserver is using a folder prefix, then also add it here.(Example: INBOX/Spam)

Sieve settings list

Name Default Description
sieve_rewrite_hosts "" Rewrite IMAP hosts when using imapproxy for example. Eg. ","
sieve_vacation_subject "" If set this will be used as a subject. When empty "Auto:" is prepended to the original subject
sieve_tls true Default setting for the TLS checkbox
sieve_port 2000 Default sieve port

Advanced SMTP

Name Default Description
smtp_account_id false Enable sending system emails with an email account from the email module. Needs to be the id of the wanted mail account.
smtp_account_smime_sign false Enable Smime for outgoing system emails. Note: this only works when a mailaccount is used to send the system emails (Please see: $smtp_account_id)
smtp_account_smime_password "" The password that is needed to sign the Smime certificate for outgoing system emails. Note: this is only needed when a mailaccount is used to send the system emails (Please see: smtp_account_id) and when smtp_account_smime_sign is set to true

External program settings

Name Default Description
cmd_zip "/usr/bin/zip" Command to create ZIP archive.
cmd_unzip "/usr/bin/unzip" Command to unpack ZIP archive.
cmd_tar "/bin/tar" Command to control TAR archives.
cmd_sudo "/usr/bin/sudo" Command to set system passwords. Used by SUDO must be set up!
cmd_chpasswd "/usr/sbin/chpasswd" Command to SUDO.
cmd_xml2wbxml "/usr/bin/xml2wbxml" Command to convert xml to wbxml.
cmd_wbxml2xml "/usr/bin/wbxml2xml" Command to convert wbxml to bxml.
cmd_tnef "/usr/bin/tnef" Command to unpack winmail.dat files.
cmd_php "php" Command to execute the php command line interface.

Servermanager settings list

Name Default Description
servermanager_auto_groups See Server_Manager#Configurable_options

LDAP Authentication

Name Default Description
ldap_host 'localhost' The hostname of the LDAP server to connect to.
ldap_port 389 Port number that is used by the LDAP server
ldap_user "cn=Directory Manager" Username of the Directory manager
ldap_pass Admin password of the server.
ldap_basedn Distinguished name of the base directory.
ldap_peopledn Name of the People directory where groupoffice will look for users to login.
ldap_groupsdn Name of the Groups directory where groupoffice will look for groups. Only used to sync.
ldap_search_template uid={username} Optional template that will be used to search users
ldap_tls false Secure LDAP connection with Transport Layer Security.
ldap_auth_dont_update_profiles true Will not update the GroupOffice user profile on every login.
ldap_use_uid_with_email_domain Append the email domain the the logged in user is
ldap_login_on_exception true If true you can still login with existing GroupOffice account when LDAP server is not reachable.
ldap_person_fields array() Extra fields on the User settings dialog that will be saved to the LDAP server. Example
        array('checkbox', 'forwarding_enable','label' => 'Enable forwarding'),
        array('checkbox', 'forwarding_leave', 'label' => 'Do not leave copy on server'),
        array('list', 'mailForwardingAddress', 'label' => 'Forward to the following addresses'),
        array('checkbox', 'vacation_enable', 'label' => 'Enable Vacation Message'),
        array('textarea', 'mailReplyText', 'label' => 'Message'),
        array('checkbox', 'spamFilterStatus', 'label'=>'Enable spam report', 'onValue'=>'enable', 'offValue'=>'disable')
ldap_groups_search cn=* The query to lookup LDAP groups to sync with Group-Office

Z-push 2 settings list

Name Default Description
zpush2_max_attachmentsize 10485760 Maximum syncable attachment size in bytes (default 10MB). If you set this too high you'll get a memory_limit exhausted error and sync will fail completely
zpush2_provisioning true Enable device provisioning (When this is enabled the device can be wiped remotely and the user needs to accept the policies on the phone for that)
zpush2_loose_provisioning false This option allows the 'loose enforcement' of the provisioning policies for older devices which don't support provisioning (like WM 5 and HTC Android Mail)
  • false - Enforce provisioning for all devices
  • true - allow older devices, but enforce policies on devices which support it
zpush2_special_log_users array() This option allows you to create separate logfiles of the synchronisation for each user.

Add a user like this: array('username').

For multiple users it will be like: array('username','username2')

zpush_calendar_max_months 6 Limit the calendar events age to this number of months. Note that the user also as a number of days in the sync settings. If zero is entered then this age is used. The clients can also send a max age.


Name Default Description
caldav_max_months_old 1 Number of months to sync. Keep at 1 for optimal performance. Increase at your own risk!

Serverclient settings list

Name Default Description
serverclient_token (Auto generated) A password to authenticate to the server that has the postfix admin module running. It's only used for creating mailboxes. The token has to be identical on the web and mail server. By default they are the same server so you can just set anything here.
serverclient_server_url http://localhost/groupoffice/ The URL to the Group-Office running postfixadmin
serverclient_domains, Comma separated list of domains that Group-Office can create mailboxes for.
serverclient_use_ssl false Use SSL on new IMAP accounts
serverclient_novalidate_cert true Skip SSL validation
serverclient_host localhost The IMAP hostname for new accounts
serverclient_port 143 The IMAP port for new accounts
serverclient_smtp_host localhost The SMTP hostname for new accounts
serverclient_smtp_port 25 The SMTP port for new accounts
serverclient_smtp_username (empty, no auth) The SMTP username for new accounts
serverclient_smtp_password (empty, no auth) The SMTP password for new accounts