All parameters in the Site, System, Server, and Logging tabs of the Global Configuration section in Joomla 4, Joomla 5, and Joomla 6 are stored as variables in the configuration.php file. This article provides a comprehensive table mapping each configuration variable to its corresponding setting name, along with descriptions and accepted values.

Please note:

  • The configuration.php file is automatically configured during the Joomla installation process, so many parameters in the Global Configuration section should be left at their default values.
  • The configuration.php file has default permissions of 444, meaning the file should be read-only.
  • You can modify variable values directly in the configuration file by changing file permissions to 644.

Site

Site Settings

Global Configuration → Site → Site Settings
SettingValuesDescription
Site Name
$sitename
Text (text field) The name of the website, which will be used in various places (e.g., in the page title bar of the administrator panel and on offline pages).
Frontend Editing
$frontediting
Modules Ability to edit modules and/or menu items in the frontend interface.
Modules and Menu Items
None
Default Editor
$editor
Editor - CodeMirror The default visual editor for use on the site. Users can choose their own editor in their profile if the Site Settings for User parameter is enabled in the Users component settings.
Editor - TinyMCE
Editor - No Editor
Third-party plugins
Default Captcha
$captcha
Not Selected The default CAPTCHA plugin for use on the site. You may need to enter the required information into the CAPTCHA plugin.
CAPTCHA - reCAPTCHA
CAPTCHA - Invisible reCAPTCHA
Third-party plugins
Default Access Level
$access
Public The default access level for new items.
Guest
Registered
Special
Super Users
Custom User Group
Default List Limit
$list_limit
5-500 Sets the default list length in the administrator panel for all users.
Default Feed Limit
$feed_limit
5-100 Sets the number of content items to display in feeds.
Feed Email Address
$feed_email
None RSS and Atom feeds contain the author's email address (specified in the Joomla user's Email setting) or the site's email address (specified in the Site Email global setting).
Author Email
Site Email
Site Offline
$offline
Yes Determine whether the frontend pages of the site are accessible to visitors.
No
Settings for Site OfflineYes
Offline Image
$offline_image
Image URL (media manager field) The image that will be displayed on the page when the site is offline.
Offline Message
$display_offline_message
Hide The message is not displayed.
Custom Message The message uses the value specified in the Custom Message field.
Default (from language file) The message uses the value from the language variable.
Settings for Offline MessageCustom Message
Custom Message
$offline_message
Text (textarea) The custom message that will be displayed on the offline site page.

Metadata Settings

Global Configuration → Site → Metadata Settings
SettingValuesDescription
Site Meta Description
$MetaDesc
Text (textarea) The default meta description value to be used on site pages (unless a specific page has its own value).
Robots
$robots
index, follow Allows search engine robots to index the page and follow links.
noindex, follow Prevents search engine robots from indexing the page but allows them to follow links.
index, nofollow Allows search engine robots to index the page but prevents them from following links.
noindex, nofollow Prevents search engine robots from indexing the page and following links.
Rights Meta Tag
$MetaRights
Text (textarea) Copyright description to be displayed in the site page HTML markup.
Author Meta Tag
$MetaAuthor
Show Show or hide the author meta tag in the HTML code of Joomla article pages.
Hide
Generator Meta Tag
$MetaVersion
Show Show or hide the generator meta tag in the site page HTML code, which contains information about the Joomla version being used.
Hide

SEO Settings

Global Configuration → Site → SEO Settings
SettingValuesDescription
Search Engine Friendly URLs
$sef
Yes Enable or disable the Search Engine Friendly (SEF) URL optimization feature.
No
Site Name in Page Titles
$sitename_pagetitles
None Start or end all page titles (the <title> tag) with the site name (e.g., "My Site Name - My Article Title").
Before
After
Settings for Search Engine Friendly URLsYes
Use URL Rewriting
$sef_rewrite
No Enable or disable the URL rewriting feature to remove the index.php fragment from page URLs.
Yes
Add Suffix to URL
$sef_suffix
No Enable or disable the feature that adds a .html suffix to page URLs depending on the content type.
Yes
Unicode Aliases
$unicodeslugs
Yes Enable if you need Cyrillic characters in URLs (relevant for Cyrillic domains).
No Aliases will be created by transliterating to Latin characters according to the rules of the default language pack.

Cookie Settings

Global Configuration → Site → Cookie Settings
SettingValuesDescription
Cookie Domain
$cookie_domain
Text (text field) The domain name for sessions when using cookies. If you need cookies to be valid for subdomains, enter a dot before the domain name.
Cookie Path
$cookie_path
Text (text field) The path for which the cookie should be valid.

System

Debug Settings

Global Configuration → System → Debug Settings
SettingValuesDescription
Debug System
$debug
Yes Enable or disable the system debug feature and display diagnostic messages about the site. This parameter is recommended only for finding and fixing errors; it should be disabled on live sites for security reasons.
No
Debug Language
$debug_lang
Yes Enable or disable the language debug feature and display ?? or ** indicators. If no indicators are displayed, the text is likely hard-coded and a language constant needs to be created to solve the problem.
No
Settings for Debug LanguageYes
Language Display
$debug_lang_const
Constant Select the language display mode when debugging.
Value (text)

Cache Settings

Global Configuration → System → Cache Settings
SettingValuesDescription
System Cache
$caching
Disabled Standard caching generates the least amount of cache. Progressive caching generates more cache by caching modules.
Standard Caching
Progressive Caching
Settings for System Cache → not Disabled
Cache Handler
$cache_handler
File (default) The basic caching mechanism is file-based. Cache folders must be writable.
Other If specific caching modules are available on the server, you can select them.
Platform Specific Caching
$cache_platformprefix
No Enable if HTML output on mobile devices differs from output on other devices.
Yes
Cache Time (minutes)
$cachetime
Number The maximum time in minutes that a cache file should be stored before being refreshed.
Path to Cache Folder
$cache_path
Folder path (text field) Specify a writable folder for storing cache files if you do not want to use the /cache/ folder.

Session Settings

Global Configuration → System → Session Settings
SettingValuesDescription
Session Handler
$session_handler
Database The mechanism by which Joomla identifies a user after they connect to the website.
File System
Settings for Session HandlerFile System
Session Save Path
$session_filesystem_path
Folder path (text field) If left empty, the /tmp/ temporary files directory will be used.
Session Lifetime (minutes)
$lifetime
Number Automatically logs out the user after they have been inactive for the specified number of minutes.
Shared Sessions
$shared_session
Yes Enable or disable the use of shared user sessions for the frontend and administrator panel. This parameter cannot be used if Force HTTPS is set to Administrator.
No
Track Session Metadata
$session_metadata
Yes Enable or disable tracking of user session metadata. If set to Yes, session metadata (including login, ID, and the application they logged into) will be recorded in the database table. If set to No, functions that depend on metadata will be unavailable.
No
Settings for Track Session MetadataYes
Track Guest Session Metadata
$session_metadata_for_guest
Yes Enable or disable tracking of guest (unregistered user) session metadata. If set to No, only registered user session metadata will be recorded.
No

Server

Server Settings

Global Configuration → Server → Server Settings
SettingValuesDescription
Path to Temp Folder
$tmp_path
Folder path (text field) The path to the directory for storing temporary files (by default, the /tmp/ folder in the site root).
Gzip Page Compression
$gzip
Yes Enable or disable Gzip page compression to reduce file size and improve site speed metrics. This parameter should be disabled if the feature is already enabled on the server or if conflicts with third-party extensions occur.
No
Error Reporting
$error_reporting
System Default The level of PHP error reporting on the site. This parameter is recommended only for finding and fixing errors; it should be disabled on live sites for security reasons.
None
Simple
Maximum
Force HTTPS
$force_ssl
None Enable or disable the use of the HTTPS protocol. For this parameter to work, HTTPS must also be enabled on the server or load balancer. If the SSL certificate terminates at the load balancer but the site is served over HTTP, enable the Behind Load Balancer parameter.
Entire Site
Administrator

Location Settings

Global Configuration → Server → Location Settings
SettingValuesDescription
Website Time Zone
$offset
Time zone (dropdown list) Select the time zone for displaying correct date and time. Users can choose their own time zone in their profile.

Web Services Settings

Global Configuration → Server → Web Services Settings
SettingValuesDescription
Enable CORS
$cors
Yes Enable or disable the use of Cross-Origin Resource Sharing (CORS) headers, which allow browser scripts to interact with resources from a different origin.
No
Settings for Enable CORSYes
Access-Control-Allow-Origin
$cors_allow_origin
Text field Enter the origin addresses to be sent back in response to the preflight request (default: *).
Access-Control-Allow-Headers
$cors_allow_headers
Text field Enter the headers to be sent back in response to the preflight request (default: Content-Type, X-Joomla-Token).
Access-Control-Allow-Methods
$cors_allow_methods
Text field Enter the method headers to be sent back in response to the preflight request (default: empty).

Proxy Settings

Global Configuration → Server → Proxy Settings
Behind Load Balancer
$behind_loadbalancer
Yes Enable or disable the use of a load balancer if the site is behind a load balancer or reverse proxy. Enabling this parameter allows the real IP address of the site user to be obtained and logged in the user actions log.
No
Enable Outbound Proxy
$proxy_enable
Yes Enable or disable the use of an outbound proxy server for accessing resources on the network.
No
Settings for Enable Outbound ProxyYes
Outbound Proxy Host
$proxy_host
Text Enter the hostname or IP address of the proxy server.
Outbound Proxy Port
$proxy_port
Number Enter the port number of the proxy server.
Outbound Proxy Username
$proxy_user
Text Leave empty if your outbound proxy server does not require authentication.
Outbound Proxy Password
$proxy_pass
Password Enter the password for the outbound proxy server if authentication is required.

Database Settings

Global Configuration → Server → Database Settings
SettingValuesDescription
Database Type
$dbtype
MySQLi The type of database being used, selected during the installation process.
MySQL (PDO)
PostgreSQL (PDO)
Host
$host
Text The database hostname entered during installation (default: localhost).
Database Username
$user
Text The username for accessing the database, entered during installation.
Database Password
$password
Password The user password for accessing the database, entered during installation.
Database Name
$db
Text The name of the database, entered during installation.
Database Tables Prefix
$dbprefix
Text The prefix used for database tables, generated during installation.
Connection Encryption
$dbencryption
Default (server controlled) Use the server's default encryption settings.
One-way authentication Use one-way SSL/TLS authentication for the database connection.
Two-way authentication Use mutual SSL/TLS authentication for the database connection.
Settings for Connection EncryptionOne-way authentication
Verify Server Certificate
$dbsslverifyservercert
Yes Enable or disable verification of the server's SSL certificate. Requires Path to CA File to be specified.
No
Settings for Verify Server CertificateYes
Path to CA File
$dbsslca
Text The path to the Certificate Authority (CA) file for verifying the server certificate.
Settings for Connection EncryptionTwo-way authentication
Path to Private Key File
$dbsslkey
Text The path to the private key file for mutual authentication.
Path to Certificate File
$dbsslcert
Text The path to the client certificate file for mutual authentication.
Supported Cipher Suite (optional)
$dbsslcipher
Text Optional: specify a custom cipher suite for the encrypted connection.

Mail Settings

Global Configuration → Server → Mail Settings
SettingValuesDescription
Send Mail
$mailonline
Yes Enable or disable the ability to send emails from the site. If set to No, the system will not send any notifications (e.g., registration confirmations, password reset emails).
No
Settings for Send MailYes
Disable Mass Mail
$massmailoff
Yes Enable or disable the ability for administrators to send mass emails to registered users through the Users component. It is recommended to disable this on large sites to prevent accidental or malicious mass mailing.
No
From Email
$mailfrom
Email (text field) The email address that will appear in the From: field of all outgoing emails. Typically an address like This email address is being protected from spambots. You need JavaScript enabled to view it..
From Name
$fromname
Name (text field) The sender name displayed in the From: field of all outgoing emails. Usually the site name, so recipients know who the email is from.
Reply To Email
$replyto
Email (text field) The email address where replies will be sent if the recipient clicks "Reply." It is recommended to specify a real address monitored by the site administrator.
Reply To Name
$replytoname
Name (text field) The recipient name displayed in the To: field when replying to an email. Usually matches the sender or administrator name.
Mailer
$mailer
PHP Mail Select the email sending method. PHP MailPHP's built-in mail function (simple, but often limited by hosting). Sendmail — uses the Sendmail program on the server (more reliable). SMTP — sends via an external SMTP server (most reliable, recommended for most sites).
Sendmail
SMTP
Settings for MailerSendmail
Sendmail Path
$sendmail
Path (text) The path to the Sendmail executable on the server. Typically /usr/sbin/sendmail. Leave empty if unsure — the system will use the default path.
Settings for MailerSMTP
SMTP Host
$smtphost
Hostname (text) The address of the SMTP server through which emails will be sent. For example, smtp.gmail.com or your hosting provider's SMTP address.
SMTP Port
$smtpport
Number The SMTP server port. Typically 25 (no encryption), 465 (SSL/TLS), or 587 (STARTTLS). Check with your provider or in the email service documentation.
SMTP Security
$smtpsecure
None Select the encryption method for the SMTP connection. None — no encryption (not recommended). SSL/TLS — encryption via SSL or TLS (usually port 465). STARTTLS — encryption via STARTTLS (usually port 587). It is recommended to use SSL/TLS or STARTTLS for security.
SSL/TLS
STARTTLS
SMTP Authentication
$smtpauth
Yes Enable or disable authentication on the SMTP server. Most modern SMTP servers require authentication, so it is recommended to set this to Yes.
No
Settings for SMTP AuthenticationYes
SMTP Username
$smtpuser
Username (text) The username for authentication on the SMTP server. Usually the full email address (e.g., This email address is being protected from spambots. You need JavaScript enabled to view it.) or the login provided by your host.
SMTP Password
$smtppass
Password The password for authentication on the SMTP server. Be careful: if you have two-factor authentication enabled, you may need to use an app password instead of your main password.

Logging

Logging Settings

Global Configuration → Logging → Logging Settings
SettingValuesDescription
Path to Log Folder
$log_path
Folder path (text field) The path to the directory for storing log files (default: /administrator/logs/). Ensure the folder is writable.
Log Almost Everything
$log_everything
Yes Enable or disable logging of events across all categories, except deprecated API functions. When enabled, all system events will be logged, which is useful for debugging but may generate large log files.
No
Log Deprecated API
$log_deprecated
Yes Enable or disable logging of calls to deprecated API functions. Recommended for developers to track usage of deprecated code in third-party extensions and update them in a timely manner. On live sites, this can be disabled to avoid cluttering the logs.
No

Advanced Settings

Global Configuration → Logging → Advanced Settings
SettingValuesDescription
Log Priorities
$log_priorities
Multiple selection The events that should be recorded in the log file (default: All).
Log Categories
$log_categories
Text (text field) Category headers for logging (e.g., database, databasequery, database-error, jerror, joomlafailure, update, updater). If left empty, custom logging will be disabled.
Log Category Mode
$log_category_mode
Yes Activate mode for the list of log categories.
No

configuration.php Variables

There are several variables in the configuration.php file whose values can only be changed by directly editing the file itself.

$live_site Site URL An optional parameter that can set the canonical URL of the site for the system. Note that if you restore a backup of your site where $live_site points to your live site's URL, the system will redirect to that live site.
$secret Random character string A random string generated during the first Joomla installation, used for encrypting data for security purposes. The value of this variable cannot be changed, otherwise you may lose access to the site.
$helpurl Help URL The URL of the documentation pages accessed by the system when help requests are made from the administrator panel (the Help button on the toolbar).

Video