PluginProbe ʕ •ᴥ•ʔ
Matomo Analytics – Powerful, Privacy-First Insights for WordPress / 5.1.0
Matomo Analytics – Powerful, Privacy-First Insights for WordPress v5.1.0
5.13.0 5.12.1 5.12.0 5.11.1 5.11.0 5.10.2 5.10.1 trunk 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.2 1.1.3 1.2.0 1.3.0 1.3.1 1.3.2 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.1.0 4.1.1 4.1.2 4.1.3 4.10.0 4.11.0 4.12.0 4.13.0 4.13.2 4.13.3 4.13.4 4.13.5 4.14.0 4.14.1 4.14.2 4.15.0 4.15.1 4.15.2 4.15.3 4.2.0 4.3.0 4.3.1 4.4.1 4.4.2 4.5.0 4.6.0 5.0.1 5.0.2 5.0.3 5.0.4 5.0.5 5.0.6 5.0.7 5.0.8 5.1.0 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7 5.10.0 5.2.0 5.2.1 5.2.2 5.3.0 5.3.1 5.3.2 5.3.3 5.6.0 5.6.1 5.7.0 5.7.1 5.8.0 5.8.1 5.8.2
matomo / app / config / global.ini.php
matomo / app / config Last commit date
environment 2 years ago global.ini.php 2 years ago global.php 2 years ago
global.ini.php
1314 lines
1 ; <?php exit; ?> DO NOT REMOVE THIS LINE
2 ; If you want to change some of these default values, the best practise is to override
3 ; them in your configuration file in config/config.ini.php. If you directly edit this file,
4 ; you will lose your changes when you upgrade Matomo.
5 ; For example if you want to override action_title_category_delimiter,
6 ; edit config/config.ini.php and add the following:
7 ; [General]
8 ; action_title_category_delimiter = "-"
9
10 ;--------
11 ; WARNING - YOU SHOULD NOT EDIT THIS FILE DIRECTLY - Edit config.ini.php instead.
12 ;--------
13
14 [database]
15 host =
16 username =
17 password =
18 dbname =
19 tables_prefix =
20 port = 3306
21 adapter = PDO\MYSQL
22 type = InnoDB
23 schema = Mysql
24
25 ; Database SSL Options START
26 ; Turn on or off SSL connection to database, possible values for enable_ssl: 1 or 0
27 enable_ssl = 0
28 ; Direct path to server CA file, CA bundle supported (required for ssl connection)
29 ssl_ca =
30 ; Direct path to client cert file (optional)
31 ssl_cert =
32 ; Direct path to client key file (optional)
33 ssl_key =
34 ; Direct path to CA cert files directory (optional)
35 ssl_ca_path =
36 ; List of one or more ciphers for SSL encryption, in OpenSSL format (optional)
37 ssl_cipher =
38 ; Whether to skip verification of self signed certificates (optional, only supported
39 ; w/ specific PHP versions, and is mostly for testing purposes)
40 ssl_no_verify =
41 ; Database SSL Options END
42
43 ; if charset is set to utf8, Matomo will ensure that it is storing its data using UTF8 charset.
44 ; it will add a sql query SET at each page view.
45 ; Matomo should work correctly without this setting but we recommend to have a charset set.
46 charset = utf8
47
48 ; Database error codes to ignore during updates
49 ;
50 ;ignore_error_codes[] = 1105
51
52 ; Add a query hint for the order of joined tables when building segment queries in MySQL. This can be used to override
53 ; sub-optimal choices by the MySQL optimizer and always ensure the query plan starts with the first table in the query.
54 enable_segment_first_table_join_prefix = 0
55
56 ; Add a query hint for the order of joined tables for all log table queries in MySQL.
57 enable_first_table_join_prefix = 0
58
59 ; If configured, the following queries will be executed on the reader instead of the writer.
60 ; * archiving queries that hit a log table
61 ; * live queries that hit a log table
62 ; You only want to enable a reader if you can ensure there is minimal replication lag / delay on the reader.
63 ; Otherwise you might get corrupt data in the reports.
64 [database_reader]
65 host =
66 username =
67 password =
68 dbname =
69 port = 3306
70
71 ; If you are using Amazon Aurora you can enable aurora_read_only_read_committed to prevent purge lag which happens
72 ; when internal garbage collection is blocked by long-running archiving queries. The setting will be only applied
73 ; if you are using Amazon Aurora and have configured a reader database.
74 aurora_readonly_read_committed =
75
76 [database_tests]
77 host = "127.0.0.1"
78 username = "@USERNAME@"
79 password =
80 dbname = matomo_tests
81 tables_prefix =
82 port = 3306
83 adapter = PDO\MYSQL
84 type = InnoDB
85 schema = Mysql
86 charset = utf8mb4
87 enable_ssl = 0
88 ssl_ca =
89 ssl_cert =
90 ssl_key =
91 ssl_ca_path =
92 ssl_cipher =
93 ssl_no_verify = 1
94
95 [tests]
96 ; needed in order to run tests.
97 ; if Matomo is available at http://localhost/dev/matomo/ replace @REQUEST_URI@ with /dev/matomo/
98 ; note: the REQUEST_URI should not contain "plugins" or "tests" in the PATH
99 http_host = localhost
100 remote_addr = "127.0.0.1"
101 request_uri = "@REQUEST_URI@"
102 port =
103 enable_logging = 0
104
105 [log]
106 ; possible values for log: screen, database, file, errorlog, syslog
107 log_writers[] = screen
108
109 ; log level, everything logged w/ this level or one of greater severity
110 ; will be logged. everything else will be ignored. possible values are:
111 ; ERROR, WARN, INFO, DEBUG
112 ; this setting will apply to every log writer, if there is no specific log level defined for a writer.
113 log_level = WARN
114
115 ; you can also set specific log levels for different writers, by appending the writer name to log_level_, like so:
116 ; this allows you to log more information to one backend vs another.
117 ; log_level_screen =
118 ; log_level_file =
119 ; log_level_errorlog =
120 ; log_level_syslog =
121
122 ; if configured to log in a file, log entries will be made to this file
123 logger_file_path = tmp/logs/matomo.log
124
125 ; if configured to log to syslog, mark them with this identifier string.
126 ; This acts as an easy-to-find tag in the syslog.
127 logger_syslog_ident = 'matomo'
128
129 [Cache]
130 ; available backends are 'file', 'array', 'null', 'redis', 'chained'
131 ; 'array' will cache data only during one request
132 ; 'null' will not cache anything at all
133 ; 'file' will cache on the filesystem
134 ; 'redis' will cache on a Redis server, use this if you are running Matomo with multiple servers. Further configuration in [RedisCache] is needed
135 ; 'chained' will chain multiple cache backends. Further configuration in [ChainedCache] is needed
136 backend = chained
137
138 ; Configuration to switch on/off opcache_reset when general caches are cleared. This may be useful for multi-tenant installations that would rather
139 ; manage opcache resets by themselves. This could also be used by scripts to temporarily switch off opcache resets.
140 enable_opcache_reset = 1
141
142 [ChainedCache]
143 ; The chained cache will always try to read from the fastest backend first (the first listed one) to avoid requesting
144 ; the same cache entry from the slowest backend multiple times in one request.
145 backends[] = array
146 backends[] = file
147
148 [RedisCache]
149 ; Redis server configuration.
150 host = "127.0.0.1"
151 port = 6379
152 ; instead of host and port a unix socket path can be configured
153 unix_socket = ""
154 timeout = 0.0
155 password = ""
156 database = 14
157 ; In case you are using queued tracking: Make sure to configure a different database! Otherwise queued requests might
158 ; be flushed
159
160 [Debug]
161 ; if set to 1, the archiving process will always be triggered, even if the archive has already been computed
162 ; this is useful when making changes to the archiving code so we can force the archiving process
163 always_archive_data_period = 0;
164 always_archive_data_day = 0;
165 ; Force archiving Custom date range (without re-archiving sub-periods used to process this date range)
166 always_archive_data_range = 0;
167
168 ; if set to 1, all the SQL queries will be recorded by the profiler
169 ; and a profiling summary will be printed at the end of the request
170 ; NOTE: you must also set [log] log_writers[] = "screen" to enable the profiler to print on screen
171 enable_sql_profiler = 0
172
173 ; If set to 1, all requests to matomo.php will be forced to be 'new visitors'
174 tracker_always_new_visitor = 0
175
176 ; if set to 1, all SQL queries will be logged using the DEBUG log level
177 log_sql_queries = 0
178
179 ; if set to 1, core:archive profiling information will be recorded in a log file. the log file is determined by the
180 ; archive_profiling_log option.
181 archiving_profile = 0
182
183 ; if set to an absolute path, core:archive profiling information will be logged to specified file
184 archive_profiling_log =
185
186 ; if set to 1, use of a php profiler will be enabled. the profiler will not be activated unless its installation
187 ; can be detected and the correct query and CLI parameters are supplied to toggle it.
188 ; Note: this setting is not dependent on development mode, since it is often required to run the profiler with
189 ; all optimizations and caches enabled.
190 enable_php_profiler = 0
191
192 [DebugTests]
193 ; When set to 1, standalone plugins (those with their own git repositories)
194 ; will be loaded when executing tests.
195 enable_load_standalone_plugins_during_tests = 0
196
197 [Development]
198 ; Enables the development mode where we avoid most caching to make sure code changes will be directly applied as
199 ; some caches are only invalidated after an update otherwise. When enabled it'll also performs some validation checks.
200 ; For instance if you register a method in a widget we will verify whether the method actually exists and is public.
201 ; If not, we will show you a helpful warning to make it easy to find simple typos etc.
202 enabled = 0
203
204 ; if set to 1, javascript files will be included individually and neither merged nor minified.
205 ; this option must be set to 1 when adding, removing or modifying javascript files
206 ; Note that for quick debugging, instead of using below setting, you can add `&disable_merged_assets=1` to the Matomo URL
207 disable_merged_assets = 0
208
209 [General]
210 ; the following settings control whether Unique Visitors `nb_uniq_visitors` and Unique users `nb_users` will be processed for different period types.
211 ; year and range periods are disabled by default, to ensure optimal performance for high traffic Matomo instances
212 ; if you set it to 1 and want the Unique Visitors to be re-processed for reports in the past, drop all matomo_archive_* tables
213 ; it is recommended to always enable Unique Visitors and Unique Users processing for 'day' periods
214 enable_processing_unique_visitors_day = 1
215 enable_processing_unique_visitors_week = 1
216 enable_processing_unique_visitors_month = 1
217 enable_processing_unique_visitors_year = 0
218 enable_processing_unique_visitors_range = 0
219
220 ; controls whether Unique Visitors will be processed for groups of websites. these metrics describe the number
221 ; of unique visitors across the entire set of websites, so if a visitor visited two websites in the group, she
222 ; would still only be counted as one. only relevant when using plugins that group sites together
223 enable_processing_unique_visitors_multiple_sites = 0
224
225 ; The list of periods that are available in the Matomo calendar
226 ; Example use case: custom date range requests are processed in real time,
227 ; so they may take a few minutes on very high traffic website: you may remove "range" below to disable this period
228 enabled_periods_UI = "day,week,month,year,range"
229
230 ; The list of periods that are available in through the API. This also controls the list of periods that are allowed
231 ; to be archived. You can disable some of them if you have a high traffic website and archiving is too compute heavy.
232 ; NOTE: if you disable a period in the API, it's parent periods are effectively disabled as well. For example, if
233 ; month periods are disabled, then year periods can no longer be computed, so they are effectively disabled as well.
234 enabled_periods_API = "day,week,month,year,range"
235
236 ; whether to enable segment archiving cache
237 ; Note: if you use any plugins, this need to be compliant with Matomo and
238 ; * depending on the segment you create you may need a newer MySQL version (eg 5.7 or newer)
239 ; * use a reader database for archiving in case you have configured a database reader
240 enable_segments_cache = 1
241
242 ; when set to 1, all requests to Matomo will return a maintenance message without connecting to the DB
243 ; this is useful when upgrading using the shell command, to prevent other users from accessing the UI while Upgrade is in progress
244 maintenance_mode = 0
245
246 ; Defines the release channel that shall be used. Currently available values are:
247 ; "latest_stable", "latest_beta", "latest_4x_stable", "latest_4x_beta"
248 release_channel = "latest_stable"
249
250 ; character used to automatically create categories in the Actions > Pages, Outlinks and Downloads reports
251 ; for example a URL like "example.com/blog/development/first-post" will create
252 ; the page first-post in the subcategory development which belongs to the blog category
253 action_url_category_delimiter = /
254
255 ; similar to above, but this delimiter is only used for page titles in the Actions > Page titles report
256 action_title_category_delimiter = ""
257
258 ; the maximum url category depth to track. if this is set to 2, then a url such as
259 ; "example.com/blog/development/first-post" would be treated as "example.com/blog/development".
260 ; this setting is used mainly to limit the amount of data that is stored by Matomo.
261 action_category_level_limit = 10
262
263 ; minimum number of websites to run autocompleter
264 autocomplete_min_sites = 5
265
266 ; maximum number of websites showed in search results in autocompleter
267 site_selector_max_sites = 15
268
269 ; if set to 1, shows sparklines (evolution graph) in 'All Websites' report (MultiSites plugin)
270 show_multisites_sparklines = 1
271
272 ; number of websites to display per page in the All Websites dashboard
273 all_websites_website_per_page = 50
274
275 ; if set to 0, the anonymous user will not be able to use the 'segments' parameter in the API request
276 ; this is useful to prevent full DB access to the anonymous user, or to limit performance usage
277 anonymous_user_enable_use_segments_API = 1
278
279 ; if browser trigger archiving is disabled, API requests with a &segment= parameter will still trigger archiving.
280 ; You can force the browser archiving to be disabled in most cases by setting this setting to 1
281 ; The only time that the browser will still trigger archiving is when requesting a custom date range that is not pre-processed yet
282 browser_archiving_disabled_enforce = 0
283
284 ; Add custom currencies to Sites Manager.
285 currencies[BTC] = Bitcoin
286
287 ; default expiry time in days for invite user tokens
288 default_invite_user_token_expiry_days = 7
289
290 ; By default, users can create Segments which are to be processed in Real-time.
291 ; Setting this to 0 will force all newly created Custom Segments to be "Pre-processed (faster, requires archive.php cron)"
292 ; This can be useful if you want to prevent users from adding much load on the server.
293 ; Notes:
294 ; * any existing Segment set to "processed in Real time", will still be set to Real-time.
295 ; this will only affect custom segments added or modified after this setting is changed.
296 ; * users with at least 'view' access will still be able to create pre-processed segments, regardless
297 ; of what this is set to.
298 enable_create_realtime_segments = 1
299
300 ; Whether to enable the "Suggest values for segment" in the Segment Editor panel.
301 ; Set this to 0 in case your Matomo database is very big, and suggested values may not appear in time
302 enable_segment_suggested_values = 1
303
304 ; By default, any user with a "view" access for a website can create segment assigned to this website.
305 ; Set this to "admin" or "superuser" to require that users should have at least this access to create new segments.
306 ; Note: anonymous user (even if it has view access) is not allowed to create or edit segment.
307 ; Possible values are "view", "write", "admin", "superuser"
308 adding_segment_requires_access = "view"
309
310 ; Whether it is allowed for users to add segments that affect all websites or not. If there are many websites
311 ; this admin option can be used to prevent users from performing an action that will have a major impact
312 ; on Matomo performance.
313 allow_adding_segments_for_all_websites = 1
314
315 ; When archiving segments for the first time, this determines the oldest date that will be archived.
316 ; This option can be used to avoid archiving (for instance) the lastN years for every new segment.
317 ; Valid option values include: "beginning_of_time" (start date of archiving will not be changed)
318 ; "segment_last_edit_time" (start date of archiving will be the earliest last edit date found,
319 ; if none is found, the created date is used)
320 ; "segment_creation_time" (start date of archiving will be the creation date of the segment)
321 ; editLastN where N is an integer (eg "editLast10" to archive for 10 days before the segment last edit date)
322 ; lastN where N is an integer (eg "last10" to archive for 10 days before the segment creation date)
323 process_new_segments_from = "beginning_of_time"
324
325 ; this action name is used when the URL ends with a slash /
326 ; it is useful to have an actual string to write in the UI
327 action_default_name = index
328
329 ; default language to use in Matomo
330 default_language = en
331
332 ; default number of elements in the datatable
333 datatable_default_limit = 10
334
335 ; Each datatable report has a Row Limit selector at the bottom right.
336 ; By default you can select from 5 to 500 rows. You may customise the values below
337 ; -1 will be displayed as 'all' and it will export all rows (filter_limit=-1)
338 datatable_row_limits = "5,10,25,50,100,250,500,-1"
339
340 ; default number of rows returned in API responses
341 ; this value is overwritten by the '# Rows to display' selector.
342 ; if set to -1, a click on 'Export as' will export all rows independently of the current '# Rows to display'.
343 API_datatable_default_limit = 100
344
345 ; When period=range, below the datatables, when user clicks on "export", the data will be aggregate of the range.
346 ; Here you can specify the comma separated list of formats for which the data will be exported aggregated by day
347 ; (ie. there will be a new "date" column). For example set to: "rss,tsv,csv"
348 datatable_export_range_as_day = "rss"
349
350 ; This setting is overridden in the UI, under "User Settings".
351 ; The date and period loaded by Matomo uses the defaults below. Possible values: yesterday, today.
352 default_day = yesterday
353 ; Possible values: day, week, month, year.
354 default_period = day
355
356 ; Time in seconds after which an archive will be computed again. This setting is used only for today's statistics.
357 ; This setting is overridden in the UI, under "General Settings".
358 ; This setting is only used if it hasn't been overridden via the UI yet, or if enable_general_settings_admin=0
359 time_before_today_archive_considered_outdated = 900
360
361 ; Time in seconds after which an archive will be computed again. This setting is used only for week's statistics.
362 ; If set to "-1" (default), it will fall back to the UI setting under "General settings" unless enable_general_settings_admin=0
363 ; is set. In this case it will default to "time_before_today_archive_considered_outdated";
364 time_before_week_archive_considered_outdated = -1
365
366 ; Same as config setting "time_before_week_archive_considered_outdated" but it is only applied to monthly archives
367 time_before_month_archive_considered_outdated = -1
368
369 ; Same as config setting "time_before_week_archive_considered_outdated" but it is only applied to yearly archives
370 time_before_year_archive_considered_outdated = -1
371
372 ; Same as config setting "time_before_week_archive_considered_outdated" but it is only applied to range archives
373 time_before_range_archive_considered_outdated = -1
374
375 ; This setting is overridden in the UI, under "General Settings".
376 ; The default value is to allow browsers to trigger the Matomo archiving process.
377 ; This setting is only used if it hasn't been overridden via the UI yet, or if enable_general_settings_admin=0
378 enable_browser_archiving_triggering = 1
379
380 ; By default, Matomo will force archiving of range periods from browser requests, even if enable_browser_archiving_triggering
381 ; is set to 0. This can sometimes create too much of a demand on system resources. Setting this option to 0 and
382 ; disabling browser trigger archiving will make sure ranges are not archived on browser request. Since the cron
383 ; archiver does not archive any custom date ranges, you must either disable range (using enabled_periods_API and enabled_periods_UI)
384 ; or make sure the date ranges users' want to see will be processed somehow.
385 archiving_range_force_on_browser_request = 1
386
387 ; By default Matomo will automatically archive all date ranges any user has chosen in their account settings.
388 ; This is limited to the available options last7, previous7, last30 and previous30.
389 ; If you need any other period, or want to ensure one of those is always archived, you can define them here
390 archiving_custom_ranges[] =
391
392 ; If configured, archiving queries will be aborted after the configured amount of seconds. Set it to -1 if the query time
393 ; should not be limited. Note: This feature requires a recent MySQL version (5.7 or newer) and the PDO\MYSQL extension
394 ; must be used. Some MySQL forks like MariaDB might not support this feature which uses the MAX_EXECUTION_TIME hint.
395 ; This feature will not work with the MYSQLI extension.
396 archiving_query_max_execution_time = 7200
397
398 ; Allows you to disable archiving segments for selected plugins. For more details please see https://matomo.org/faq/how-to-disable-archiving-the-segment-reports-for-specific-plugins
399 ; Here you can specify the comma separated list eg: "plugin1,plugin2"
400 disable_archiving_segment_for_plugins = ""
401
402 ; By default Matomo will archive data showing the contribution of each action to goal conversions, for sites tracking millions
403 ; of visits with a large number of goals this may negatively impact archiving performance. You can disable archiving of action
404 ; goal contribution here:
405 disable_archive_actions_goals = 0
406
407 ; By default Matomo runs OPTIMIZE TABLE SQL queries to free spaces after deleting some data.
408 ; If your Matomo tracks millions of pages, the OPTIMIZE TABLE queries might run for hours (seen in "SHOW FULL PROCESSLIST \g")
409 ; so you can disable these special queries here:
410 enable_sql_optimize_queries = 1
411
412 ; By default Matomo is purging complete date range archives to free spaces after deleting some data.
413 ; If you are pre-processing custom ranges using CLI task to make them easily available in UI,
414 ; you can prevent this action from happening by setting this parameter to value bigger than 1
415 purge_date_range_archives_after_X_days = 1
416
417 ; MySQL minimum required version
418 ; note: timezone support added in 4.1.3
419 minimum_mysql_version = 4.1
420
421
422 ; Minimum advised memory limit in Mb in php.ini file (see memory_limit value)
423 ; Set to "-1" to always use the configured memory_limit value in php.ini file.
424 minimum_memory_limit = 128
425
426 ; Minimum memory limit in Mb enforced when archived via ./console core:archive
427 ; Set to "-1" to always use the configured memory_limit value in php.ini file.
428 minimum_memory_limit_when_archiving = 768
429
430 ; Matomo will check that usernames and password have a minimum length, and will check that characters are "allowed"
431 ; This can be disabled, if for example you wish to import an existing User database in Matomo and your rules are less restrictive
432 disable_checks_usernames_attributes = 0
433
434 ; Matomo will use the configured hash algorithm where possible.
435 ; For legacy data, fallback or non-security scenarios, we use md5.
436 hash_algorithm = whirlpool
437
438 ; set the algorithm used by password_hash()
439 ; "default" for the algorithm used by the PHP version or one of ["bcrypt", "argon2i", "argon2id"]
440 ; "argon2id" requires at least PHP 7.3.0
441 ; for all argon2 algorithms, additional parameters can be changed below
442 ; any changes are applied to the stored hash on the next login of a user
443 ; see https://www.php.net/manual/en/function.password-hash.php and https://wiki.php.net/rfc/argon2_password_hash
444 ; for more information
445 password_hash_algorithm = default
446
447 ; The number of CPU threads used for calculating the hash
448 password_hash_argon2_threads = default
449
450 ; The amount of memory (in KB) used for calculating the hash
451 ; a minimum of 8 times the number of threads
452 password_hash_argon2_memory_cost = default
453
454 ; The number of iterations for calculating the hash
455 password_hash_argon2_time_cost = default
456
457 ; If set to 1, Matomo will automatically redirect all http:// requests to https://
458 ; If SSL / https is not correctly configured on the server, this will break Matomo
459 ; If you set this to 1, and your SSL configuration breaks later on, you can always edit this back to 0
460 ; it is recommended for security reasons to always use Matomo over https
461 force_ssl = 0
462
463 ; If set to 1, Matomo will send a Content-Security-Policy header
464 csp_enabled = 1
465
466 ; If set, and csp_enabled is on, Matomo will send a report-uri in the Content-Security-Policy-Report-Only header
467 ; instead of a Content-Security-Policy header.
468 csp_report_only = 0
469
470 ; If set to 1 Matomo will prefer using SERVER_NAME variable over HTTP_HOST.
471 ; This can add an additional layer of security as SERVER_NAME can not be manipulated by sending custom host headers when configure correctly.
472 host_validation_use_server_name = 0
473
474 ; This list defines the hostnames that a valid sources to download GeoIP databases from. Subdomains of those hostnames will be accepted automatically.
475 geolocation_download_from_trusted_hosts[] = maxmind.com
476 geolocation_download_from_trusted_hosts[] = db-ip.com
477 geolocation_download_from_trusted_hosts[] = ip2location.com
478
479 ; Session garbage collection on (as on some operating systems, i.e. Debian, it may be off by default)
480 session_gc_probability = 1
481
482 ; (DEPRECATED) has no effect
483 login_cookie_name = matomo_auth
484
485 ; By default, the auth cookie is set only for the duration of session.
486 ; if "Remember me" is checked, the auth cookie will be valid for 14 days by default
487 login_cookie_expire = 1209600
488
489 ; Sets the session cookie path
490 login_cookie_path =
491
492 ; the amount of time before an idle session is considered expired. only affects session that were created without the
493 ; "remember me" option checked
494 login_session_not_remembered_idle_timeout = 3600
495
496 ; email address that appears as a Reply-to in the password recovery email
497 ; if specified, {DOMAIN} will be replaced by the current Matomo domain
498 login_password_recovery_replyto_email_address = "no-reply@{DOMAIN}"
499 ; name that appears as a Reply-to in the password recovery email
500 login_password_recovery_replyto_email_name = "No-reply"
501
502 ; When configured, only users from a configured IP can log into your Matomo. You can define one or multiple
503 ; IPv4, IPv6, and IP ranges. You may also define hostnames. However, resolving hostnames in each request
504 ; may slightly slow down your Matomo.
505 ; This allowlist also affects API requests unless you disabled it via the setting
506 ; "login_allowlist_apply_to_reporting_api_requests" below. Note that neither this setting, nor the
507 ; "login_allowlist_apply_to_reporting_api_requests" restricts authenticated tracking requests (tracking requests
508 ; with a "token_auth" URL parameter).
509 ;
510 ; Examples:
511 ; login_allowlist_ip[] = 204.93.240.*
512 ; login_allowlist_ip[] = 204.93.177.0/24
513 ; login_allowlist_ip[] = 199.27.128.0/21
514 ; login_allowlist_ip[] = 2001:db8::/48
515 ; login_allowlist_ip[] = matomo.org
516
517 ; By default, if an allowlisted IP address is specified via "login_allowlist_ip[]", the reporting user interface as
518 ; well as HTTP Reporting API requests will only work for these allowlisted IPs.
519 ; Set this setting to "0" to allow HTTP Reporting API requests from any IP address.
520 login_allowlist_apply_to_reporting_api_requests = 1
521
522 ; By default when user logs out they are redirected to Matomo "homepage" usually the Login form.
523 ; Uncomment the next line to set a URL to redirect the user to after they log out of Matomo.
524 ; login_logout_url = http://...
525
526 ; By default the logme functionality to automatically log in users using url params is disabled
527 ; You can enable that by setting this to "1". See https://matomo.org/faq/how-to/faq_30/ for more details
528 login_allow_logme = 0
529
530 ; Set to 1 to disable the framebuster on standard Non-widgets pages (a click-jacking countermeasure).
531 ; Default is 0 (i.e., bust frames on all non Widget pages such as Login, API, Widgets, Email reports, etc.).
532 enable_framed_pages = 0
533
534 ; Set to 1 to disable the framebuster on Admin pages (a click-jacking countermeasure).
535 ; Default is 0 (i.e., bust frames on the Settings forms).
536 enable_framed_settings = 0
537
538 ; Set to 1 to allow using token_auths with write or admin access in iframes that embed Matomo.
539 ; Note that the token used will be in the URL in the iframe, and thus will be stored in webserver
540 ; logs and possibly other places. Using write or admin token_auths can be seen as a security risk,
541 ; though it can be necessary in some use cases. We do not recommend enabling this setting, for more
542 ; information view the FAQ: https://matomo.org/faq/troubleshooting/faq_147/
543 enable_framed_allow_write_admin_token_auth = 0
544
545 ; Set to 1 to only allow tokens to be used in a secure way (e.g. via POST requests). This will completely prevent using
546 ; token_auth as URL parameter in GET requests. When enabled all new authentication tokens
547 ; will be created for Secure use only, and previously created tokens will only be accepted in a secure way (POST requests).
548 ; Recommended for best security.
549 only_allow_secure_auth_tokens = 0
550
551 ; language cookie name for session
552 language_cookie_name = matomo_lang
553
554 ; standard email address displayed when sending emails
555 noreply_email_address = "noreply@{DOMAIN}"
556
557 ; standard email name displayed when sending emails. If not set, a default name will be used.
558 noreply_email_name = ""
559
560 ; email address to use when an administrator should be contacted. If not set, email addresses of all super users will be used instead.
561 ; To use multiple addresses simply concatenate them with a ','
562 contact_email_address = ""
563
564 ; set to 0 to disable sending of all emails. useful for testing.
565 emails_enabled = 1
566
567 ; set to 0 to disable sending of emails when a password or email is changed
568 enable_update_users_email = 1
569
570 ; feedback email address;
571 ; when testing, use your own email address or "nobody"
572 feedback_email_address = "feedback@matomo.org"
573
574 ; using to set reply_to in reports e-mail to login of report creator
575 scheduled_reports_replyto_is_user_email_and_alias = 0
576
577 ; scheduled reports truncate limit
578 ; the report will be rendered with the first 23 rows and will aggregate other rows in a summary row
579 ; 23 rows table fits in one portrait page
580 scheduled_reports_truncate = 23
581
582 ; during archiving, Matomo will limit the number of results recorded, for performance reasons
583 ; maximum number of rows for any of the Referrers tables (keywords, search engines, campaigns, etc.)
584 datatable_archiving_maximum_rows_referrers = 1000
585 ; maximum number of rows for any of the Referrers subtable (search engines by keyword, keyword by campaign, etc.)
586 datatable_archiving_maximum_rows_subtable_referrers = 50
587
588 ; maximum number of rows for the Users report
589 datatable_archiving_maximum_rows_userid_users = 50000
590
591 ; maximum number of rows for the Custom Dimensions report
592 datatable_archiving_maximum_rows_custom_dimensions = 1000
593 ; maximum number of rows for the Custom Dimensions subtable reports
594 datatable_archiving_maximum_rows_subtable_custom_dimensions = 1000
595
596 ; maximum number of rows for any of the Actions tables (pages, downloads, outlinks)
597 datatable_archiving_maximum_rows_actions = 500
598 ; maximum number of rows for pages in categories (sub pages, when clicking on the + for a page category)
599 ; note: should not exceed the display limit in Piwik\Actions\Controller::ACTIONS_REPORT_ROWS_DISPLAY
600 ; because each subdirectory doesn't have paging at the bottom, so all data should be displayed if possible.
601 datatable_archiving_maximum_rows_subtable_actions = 100
602 ; maximum number of rows for the Site Search table
603 datatable_archiving_maximum_rows_site_search = 500
604
605 ; maximum number of rows for any of the Events tables (Categories, Actions, Names)
606 datatable_archiving_maximum_rows_events = 500
607 ; maximum number of rows for sub-tables of the Events tables (eg. for the subtables Categories>Actions or Categories>Names).
608 datatable_archiving_maximum_rows_subtable_events = 500
609
610 ; maximum number of rows for the Products reports
611 datatable_archiving_maximum_rows_products = 10000
612
613 ; maximum number of rows for other tables (Providers, User settings configurations)
614 datatable_archiving_maximum_rows_standard = 500
615
616 ; maximum number of rows to fetch from the database when archiving. if set to 0, no limit is used.
617 ; this can be used to speed up the archiving process, but is only useful if you're site has a large
618 ; amount of actions, referrers or custom variable name/value pairs.
619 archiving_ranking_query_row_limit = 50000
620
621 ; maximum number of actions that is shown in the visitor log for each visitor
622 visitor_log_maximum_actions_per_visit = 500
623
624 ; by default, the real time Live! widget will update every 5 seconds and refresh with new visits/actions/etc.
625 ; you can change the timeout so the widget refreshes more often, or not as frequently
626 live_widget_refresh_after_seconds = 5
627
628 ; by default, the Live! real time visitor count widget will check to see how many visitors your
629 ; website received in the last 3 minutes. changing this value will change the number of minutes
630 ; the widget looks in. Only values between 1 and 2880 are allowed.
631 live_widget_visitor_count_last_minutes = 3
632
633 ; by default visitor profile will show aggregated information for the last up to 100 visits of a visitor
634 ; this limit can be adjusted by changing this value
635 live_visitor_profile_max_visits_to_aggregate = 100
636
637 ; If configured, will abort a MySQL query after the configured amount of seconds and show an error in the UI to for
638 ; example lower the date range or tweak the segment (if one is applied). Set it to -1 if the query time should not be
639 ; limited. Note: This feature requires a recent MySQL version (5.7 or newer) and the PDO\MYSQL extension must be used.
640 ; Some MySQL forks like MariaDB might not support this feature which uses the MAX_EXECUTION_TIME hint. This feature will
641 ; not work with the MYSQLI extension.
642 live_query_max_execution_time = -1
643
644 ; In "All Websites" dashboard, when looking at today's reports (or a date range including today),
645 ; the page will automatically refresh every 5 minutes. Set to 0 to disable automatic refresh
646 multisites_refresh_after_seconds = 300
647
648 ; by default, an update notification for a new version of Matomo is shown to every user. Set to 1 if only
649 ; the superusers should see the notification.
650 show_update_notification_to_superusers_only = 0
651
652 ; Set to 1 if you're using https on your Matomo server and Matomo can't detect it,
653 ; e.g., a reverse proxy using https-to-http, or a web server that doesn't
654 ; set the HTTPS environment variable.
655 assume_secure_protocol = 0
656
657 ; Set to 1 if you're using more than one server for your Matomo installation. For example if you are using Matomo in a
658 ; load balanced environment, if you have configured failover or if you're just using multiple servers in general.
659 ; By enabling this flag we will for example not allow the installation of a plugin via the UI as a plugin would be only
660 ; installed on one server or a config one change would be only made on one server instead of all servers.
661 ; This flag doesn't need to be enabled when the config file is on a shared filesystem such as NFS or EFS.
662 ; When enabled, Matomo will return the response code 200 instead of 503 in maintenance mode.
663 multi_server_environment = 0
664
665 ; List of proxy headers for client IP addresses
666 ; Matomo will determine the user IP by extracting the first IP address found in this proxy header.
667 ;
668 ; CloudFlare (CF-Connecting-IP)
669 ;proxy_client_headers[] = HTTP_CF_CONNECTING_IP
670 ;
671 ; ISP proxy (Client-IP)
672 ;proxy_client_headers[] = HTTP_CLIENT_IP
673 ;
674 ; de facto standard (X-Forwarded-For)
675 ;proxy_client_headers[] = HTTP_X_FORWARDED_FOR
676
677 ; List of proxy headers for host IP addresses
678 ;
679 ; de facto standard (X-Forwarded-Host)
680 ;proxy_host_headers[] = HTTP_X_FORWARDED_HOST
681
682 ; List of proxy IP addresses (or IP address ranges) to skip (if present in the above headers).
683 ; Generally, only required if there's more than one proxy between the visitor and the backend web server.
684 ;
685 ; Examples:
686 ;proxy_ips[] = 204.93.240.*
687 ;proxy_ips[] = 204.93.177.0/24
688 ;proxy_ips[] = 199.27.128.0/21
689 ;proxy_ips[] = 173.245.48.0/20
690
691 ; Set to 1 if you're using a proxy which is rewriting the URI.
692 ; By enabling this flag the header HTTP_X_FORWARDED_URI will be considered for the current script name.
693 proxy_uri_header = 0
694
695 ; If set to 1 we use the last IP in the list of proxy IPs when determining the client IP. Using the last IP can be more
696 ; secure when using proxy headers in combination with a load balancer. By default the first IP is read according to RFC7239
697 ; which is required when the client sends the IP through a proxy header as well as the load balancer.
698 proxy_ip_read_last_in_list = 1
699
700 ; Whether to enable trusted host checking. This can be disabled if you're running Matomo
701 ; on several URLs and do not wish to constantly edit the trusted host list.
702 enable_trusted_host_check = 1
703
704 ; List of trusted hosts (eg domain or subdomain names) when generating absolute URLs.
705 ; This only needs to be set for any hostnames that the Matomo UI will be accessed from. It is not necessary to set this
706 ; for other additional hostnames (For example tracking, API, etc.)
707 ; Examples:
708 ;trusted_hosts[] = example.com
709 ;trusted_hosts[] = stats.example.com
710
711 ; List of Cross-origin resource sharing domains (eg domain or subdomain names) when generating absolute URLs.
712 ; Described here: https://en.wikipedia.org/wiki/Cross-origin_resource_sharing
713 ;
714 ; Examples:
715 ;cors_domains[] = http://example.com
716 ;cors_domains[] = http://stats.example.com
717 ;
718 ; Or you may allow cross domain requests for all domains with:
719 ;cors_domains[] = *
720
721 ; If you use this Matomo instance over multiple hostnames, Matomo will need to know a unique instance_id for this
722 ; instance, so that Matomo can serve the right custom logo and tmp/* assets, independently of the hostname Matomo is
723 ; currently running under. Only the characters `a-z`, `0-9` and the special characters `._-` are supported.
724 ; instance_id = stats.example.com
725
726 ; The API server is an essential part of the Matomo infrastructure/ecosystem to
727 ; provide services to Matomo installations, e.g., getLatestVersion and
728 ; subscribeNewsletter.
729 api_service_url = https://api.matomo.org
730
731 ; When the ImageGraph plugin is activated, report metadata have an additional entry : 'imageGraphUrl'.
732 ; This entry can be used to request a static graph for the requested report.
733 ; When requesting report metadata with $period=range, Matomo needs to translate it to multiple periods for evolution graphs.
734 ; eg. $period=range&date=previous10 becomes $period=day&date=previous10. Use this setting to override the $period value.
735 graphs_default_period_to_plot_when_period_range = day
736
737 ; When the ImageGraph plugin is activated, enabling this option causes the image graphs to show the evolution
738 ; within the selected period instead of the evolution across the last n periods.
739 graphs_show_evolution_within_selected_period = 0
740
741 ; This option controls the default number of days in the past to show in evolution graphs generated by the ImageGraph plugin
742 graphs_default_evolution_graph_last_days_amount = 30
743
744 ; The Overlay plugin shows the Top X following pages, Top X downloads and Top X outlinks which followed
745 ; a view of the current page. The value X can be set here.
746 overlay_following_pages_limit = 300
747
748 ; With this option, you can disable the framed mode of the Overlay plugin. Use it if your website contains a framebuster.
749 overlay_disable_framed_mode = 0
750
751 ; Controls whether the user is able to upload a custom logo for their Matomo install
752 enable_custom_logo = 1
753
754 ; By default we check whether the Custom logo is writable or not, before we display the Custom logo file uploader
755 enable_custom_logo_check = 1
756
757 ; If php is running in a chroot environment, when trying to import CSV files with createTableFromCSVFile(),
758 ; Mysql will try to load the chrooted path (which is incomplete). To prevent an error, here you can specify the
759 ; absolute path to the chroot environment. eg. '/path/to/matomo/chrooted/'
760 absolute_chroot_path =
761
762 ; The path (relative to the Matomo directory) in which Matomo temporary files are stored.
763 ; Defaults to ./tmp (the tmp/ folder inside the Matomo directory)
764 tmp_path = "/tmp"
765
766 ; The absolute path to a PHP binary file in case Matomo cannot detect your PHP binary. If async CLI archiving cannot be
767 ; used on your server this may make it work. Ensure the configured PHP binary is of type CLI and not for example cgi or
768 ; litespeed. To find out the type of interface for a PHP binary execute this command: php -r "echo php_sapi_name();"
769 php_binary_path = ""
770
771 ; In some rare cases it may be useful to explicitly tell Matomo not to use LOAD DATA INFILE
772 ; This may for example be useful when doing Mysql AWS replication
773 enable_load_data_infile = 1
774
775 ; By setting this option to 0:
776 ; - links to Enable/Disable/Uninstall plugins will be hidden and disabled
777 ; - links to Uninstall themes will be disabled (but user can still enable/disable themes)
778 enable_plugins_admin = 1
779
780 ; Defines when a plugin trial request expires and a new one can be requested
781 ; By settings this value to -1 plugin trial requests will be disabled
782 plugin_trial_request_expiration_in_days = 28
783
784 ; By setting this option to 0 the users management will be disabled
785 enable_users_admin = 1
786
787 ; By setting this option to 0 the websites management will be disabled
788 enable_sites_admin = 1
789
790 ; By setting this option to 1, it will be possible for Super Users to upload Matomo plugin ZIP archives directly in Matomo Administration.
791 ; Enabling this opens a remote code execution vulnerability where
792 ; an attacker who gained Super User access could execute custom PHP code in a Matomo plugin.
793 enable_plugin_upload = 0
794
795 ; By setting this option to 0 (e.g. in common.config.ini.php) the installer will be disabled.
796 enable_installer = 1
797
798 ; By setting this option to 0, you can prevent Super User from editing the Geolocation settings.
799 enable_geolocation_admin = 1
800
801 ; By setting this option to 0, the old raw data and old report data purging features will be hidden from the UI
802 ; Note: log purging and old data purging still occurs, just the Super User cannot change the settings.
803 enable_delete_old_data_settings_admin = 1
804
805 ; By setting this option to 0, the following settings will be hidden and disabled from being set in the UI:
806 ; - Archiving settings
807 ; - Update settings
808 ; - Email server settings
809 ; - Trusted Matomo Hostname
810 enable_general_settings_admin = 1
811
812 ; Disabling this will disable features like automatic updates for Matomo,
813 ; its plugins and components like the GeoIP database, referrer spam blacklist or search engines and social network definitions
814 enable_internet_features = 1
815
816 ; By setting this option to 0, it will disable the "Auto update" feature
817 enable_auto_update = 1
818
819 ; By setting this option to 0, no emails will be sent in case of an available core.
820 ; If set to 0 it also disables the "sent plugin update emails" feature in general and the related setting in the UI.
821 enable_update_communication = 1
822
823 ; This option defines the protocols Matomo's Http class is allowed to open.
824 ; If you may need to download GeoIP updates or other stuff using other protocols like ftp you may need to extend this list.
825 allowed_outgoing_protocols = 'http,https'
826
827 ; This option forces matomo marketplace and matomo api requests to use HTTP, as default we use HTTPS to improve security
828 ; If you have a problem loading the marketplace, please enable this config option
829 force_matomo_http_request = 0
830
831 ; Comma separated list of plugin names for which console commands should be loaded (applies when Matomo is not installed yet)
832 always_load_commands_from_plugin=
833
834 ; This controls whether the pivotBy query parameter can be used with any dimension or just subtable
835 ; dimensions. If set to 1, it will fetch a report with a segment for each row of the table being pivoted.
836 ; At present, this is very inefficient, so it is disabled by default.
837 pivot_by_filter_enable_fetch_by_segment = 0
838
839 ; This controls the default maximum number of columns to display in a pivot table. Since a pivot table displays
840 ; a table's rows as columns, the number of columns can become very large, which will affect webpage layouts.
841 ; Set to -1 to specify no limit. Note: The pivotByColumnLimit query parameter can be used to override this default
842 ; on a per-request basis;
843 pivot_by_filter_default_column_limit = 10
844
845 ; If set to 0 it will disable advertisements for providers of Professional Support for Matomo.
846 piwik_professional_support_ads_enabled = 1
847
848 ; The number of days to wait before sending the JavaScript tracking code email reminder.
849 num_days_before_tracking_code_reminder = 5
850
851 ; The maximum number of segments that can be compared simultaneously.
852 data_comparison_segment_limit = 5
853
854 ; The maximum number of periods that can be compared simultaneously.
855 data_comparison_period_limit = 5
856
857 ; The path to a custom cacert.pem file Matomo should use.
858 ; By default Matomo uses a file extracted from the Firefox browser and provided here: https://curl.haxx.se/docs/caextract.html.
859 ; The file contains root CAs and is used to determine if the chain of a SSL certificate is valid and it is safe to connect.
860 ; Most users will not have to use a custom file here, but if you run your Matomo instance behind a proxy server/firewall that
861 ; breaks and reencrypts SSL connections you can set your custom file here.
862 custom_cacert_pem=
863
864 ; Whether or not to send weekly emails to superusers about tracking failures.
865 ; Default is 1.
866 enable_tracking_failures_notification = 1
867
868 ; Controls how many months in the past reports are re-archived for plugins that support
869 ; doing this (such as CustomReports). Set to 0 to disable the feature. Default is 6.
870 rearchive_reports_in_past_last_n_months = 6
871
872 ; If set to 1, when rearchiving reports in the past we do not rearchive segment data with those reports. Default is 0.
873 rearchive_reports_in_past_exclude_segments = 0
874
875 ; Enable HTTP checks for required and recommended private directories in the diagnostic system check.
876 ; Set this to 0 if you need to skip it because your hosting provider makes your site inaccessible.
877 ; Default is 1.
878 enable_required_directories_diagnostic = 1
879
880 ; If set to 1, then social and search engine definitions files will be synchronised using the internet if "enable_internet_features" is enabled.
881 ; When set to 0, the definitions will be loaded from the local definitions (updated with core).
882 enable_referrer_definition_syncs = 1
883
884 ; If set to 1, then links to matomo.org shown in the Matomo app will not include campaign tracking parameters which
885 ; describe where in the application the link originated. This information is used to improve the quality and relevance
886 ; of inline help links on matomo.org and contains no identifying information. Presence of the campaign parameters in
887 ; the link url could be used by third parties monitoring network requests to identify that the Matomo app is being used,
888 ; so it can be disabled here if necessary.
889 disable_tracking_matomo_app_links = 0
890
891 [Tracker]
892
893 ; When enabled and a userId is set, then the visitorId will be automatically set based on the userId. This allows to
894 ; identify the same user as the same visitor across devices.
895 ; Disabling this feature can be useful for example when using the third party cookie, where all Matomo tracked sites
896 ; use the same "global" visitorId for a device and you want to see when the same user switches between devices.
897 enable_userid_overwrites_visitorid = 1
898
899 ; Matomo uses "Privacy by default" model. When one of your users visit multiple of your websites tracked in this Matomo,
900 ; Matomo will create for this user a fingerprint that will be different across the multiple websites.
901 ; If you want to track unique users across websites you may set this setting to 1.
902 ; Note: setting this to 0 increases your users' privacy.
903 enable_fingerprinting_across_websites = 0
904
905 ; Matomo uses first party cookies by default. If set to 1,
906 ; the visit ID cookie will be set on the Matomo server domain as well
907 ; this is useful when you want to do cross websites analysis
908 use_third_party_id_cookie = 0
909
910 ; If tracking does not work for you or you are stuck finding an issue, you might want to enable the tracker debug mode.
911 ; Once enabled (set to 1) messages will be logged to all loggers defined in "[log] log_writers" config.
912 debug = 0
913
914 ; This option is an alternative to the debug option above. When set to 1, you can debug tracker request by adding
915 ; a debug=1 query parameter in the URL. All other HTTP requests will not have debug enabled. For security reasons this
916 ; option should be only enabled if really needed and only for a short time frame. Otherwise anyone can set debug=1 and
917 ; see the log output as well.
918 debug_on_demand = 0
919
920 ; This setting is described in this FAQ: https://matomo.org/faq/how-to/faq_175/
921 ; Note: generally this should only be set to 1 in an intranet setting, where most users have the same configuration (browsers, OS)
922 ; and the same IP. If left to 0 in this setting, all visitors will be counted as one single visitor.
923 trust_visitors_cookies = 0
924
925 ; name of the cookie used to store the visitor information
926 ; This is used only if use_third_party_id_cookie = 1
927 cookie_name = _pk_uid
928
929 ; by default, the Matomo tracking cookie expires in 13 months (365 + 28 days)
930 ; This is used only if use_third_party_id_cookie = 1
931 cookie_expire = 33955200;
932
933 ; The path on the server in which the cookie will be available on.
934 ; Defaults to empty. See spec in https://curl.haxx.se/rfc/cookie_spec.html
935 ; This is used for the Ignore cookie, and the third party cookie if use_third_party_id_cookie = 1
936 cookie_path =
937
938 ; The domain on the server in which the cookie will be available on.
939 ; Defaults to empty. See spec in https://curl.haxx.se/rfc/cookie_spec.html
940 ; This is used for the third party cookie if use_third_party_id_cookie = 1
941 cookie_domain =
942
943 ; set to 0 if you want to stop tracking the visitors. Useful if you need to stop all the connections on the DB.
944 record_statistics = 1
945
946 ; length of a visit in seconds. If a visitor comes back on the website visit_standard_length seconds
947 ; after their last page view, it will be recorded as a new visit. In case you are using the Matomo JavaScript tracker to
948 ; calculate the visit count correctly, make sure to call the method "setSessionCookieTimeout" eg
949 ; `_paq.push(['setSessionCookieTimeout', timeoutInSeconds=1800])`
950 visit_standard_length = 1800
951
952 ; The amount of time in the past to match the current visitor to a known visitor via fingerprint. Defaults to visit_standard_length.
953 ; If you are looking for higher accuracy of "returning visitors" metrics, you may set this value to 86400 or more.
954 ; This is especially useful when you use the Tracking API where tracking Returning Visitors often depends on this setting.
955 ; The value window_look_back_for_visitor is used only if it is set to greater than visit_standard_length.
956 ; Note: visitors with visitor IDs will be matched by visitor ID from any point in time, this is only for recognizing visitors
957 ; by device fingerprint.
958 window_look_back_for_visitor = 0
959
960 ; visitors that stay on the website and view only one page will be considered as time on site of 0 second
961 default_time_one_page_visit = 0
962
963 ; Comma separated list of URL query string variable names that will be removed from your tracked URLs
964 ; By default, Matomo will remove the most common parameters which are known to change often (eg. session ID parameters)
965 url_query_parameter_to_exclude_from_url = "gclid,fbclid,msclkid,twclid,wbraid,gbraid,yclid,fb_xd_fragment,fb_comment_id,phpsessid,jsessionid,sessionid,aspsessionid,doing_wp_cron,sid,pk_vid"
966
967 ; If set to 1, Matomo will use the default provider if no other provider is configured.
968 ; In addition the default provider will be used as a fallback when the configure provider does not return any results.
969 ; If set to 0, the default provider will be unavailable. Instead the "disabled" provider will be used as default and fallback instead.
970 enable_default_location_provider = 1
971
972 ; if set to 1, Matomo attempts a "best guess" at the visitor's country of
973 ; origin when the preferred language tag omits region information.
974 ; The mapping is defined in core/DataFiles/LanguageToCountry.php,
975 enable_language_to_country_guess = 1
976
977 ; When the `./console core:archive` cron hasn't been setup, we still need to regularly run some maintenance tasks.
978 ; Visits to the Tracker will try to trigger Scheduled Tasks (eg. scheduled PDF/HTML reports by email).
979 ; Scheduled tasks will only run if 'Enable Matomo Archiving from Browser' is enabled in the General Settings.
980 ; Tasks run once every hour maximum, they might not run every hour if traffic is low.
981 ; Set to 0 to disable Scheduled tasks completely.
982 scheduled_tasks_min_interval = 3600
983
984 ; name of the cookie to ignore visits
985 ignore_visits_cookie_name = matomo_ignore
986
987 ; Comma separated list of variable names that will be read to define a Campaign name, for example CPC campaign
988 ; Example: If a visitor first visits 'index.php?matomo_campaign=Adwords-CPC' then it will be counted as a campaign referrer named 'Adwords-CPC'
989 ; Includes by default the GA style campaign parameters
990 campaign_var_name = "pk_cpn,pk_campaign,piwik_campaign,mtm_campaign,matomo_campaign,utm_campaign,utm_source,utm_medium"
991
992 ; Comma separated list of variable names that will be read to track a Campaign Keyword
993 ; Example: If a visitor first visits 'index.php?matomo_campaign=Adwords-CPC&matomo_kwd=My killer keyword' ;
994 ; then it will be counted as a campaign referrer named 'Adwords-CPC' with the keyword 'My killer keyword'
995 ; Includes by default the GA style campaign keyword parameter utm_term
996 campaign_keyword_var_name = "pk_kwd,pk_keyword,piwik_kwd,mtm_kwd,mtm_keyword,matomo_kwd,utm_term"
997
998 ; if set to 1, actions that contain different campaign information from the visitor's ongoing visit will
999 ; be treated as the start of a new visit. This will include situations when campaign information was absent before,
1000 ; but is present now.
1001 create_new_visit_when_campaign_changes = 1
1002
1003 ; if set to 1, actions that contain different website referrer information from the visitor's ongoing visit
1004 ; will be treated as the start of a new visit. This will include situations when website referrer information was
1005 ; absent before, but is present now.
1006 create_new_visit_when_website_referrer_changes = 0
1007
1008 ; ONLY CHANGE THIS VALUE WHEN YOU DO NOT USE MATOMO ARCHIVING, SINCE THIS COULD CAUSE PARTIALLY MISSING ARCHIVE DATA
1009 ; Whether to force a new visit at midnight for every visitor. Default 1.
1010 create_new_visit_after_midnight = 1
1011
1012 ; Will force the creation of a new visit once a visit had this many actions.
1013 ; Increasing this number can slow down the tracking in Matomo and put more load on the database.
1014 ; Increase this limit if it's expected that you have visits with more than this many actions.
1015 ; Set to 0 or a negative value to allow unlimited actions.
1016 create_new_visit_after_x_actions = 10000
1017
1018 ; maximum length of a Page Title or a Page URL recorded in the log_action.name table
1019 page_maximum_length = 1024;
1020
1021 ; Tracker cache files are the simple caching layer for Tracking.
1022 ; TTL: Time to live for cache files, in seconds. Default to 5 minutes.
1023 tracker_cache_file_ttl = 300
1024
1025 ; Whether Bulk tracking requests to the Tracking API requires the token_auth to be set.
1026 bulk_requests_require_authentication = 0
1027
1028 ; Whether Bulk tracking requests will be wrapped within a DB Transaction.
1029 ; This greatly increases performance of Log Analytics and in general any Bulk Tracking API requests.
1030 bulk_requests_use_transaction = 1
1031
1032 ; DO NOT USE THIS SETTING ON PUBLICLY AVAILABLE MATOMO SERVER
1033 ; !!! Security risk: if set to 0, it would allow anyone to push data to Matomo with custom dates in the past/future and even with fake IPs!
1034 ; When using the Tracking API, to override either the datetime and/or the visitor IP,
1035 ; token_auth with an "admin" access is required. If you set this setting to 0, the token_auth will not be required anymore.
1036 ; DO NOT USE THIS SETTING ON PUBLIC MATOMO SERVERS
1037 tracking_requests_require_authentication = 1
1038
1039 ; By default, Matomo accepts only tracking requests for up to 1 day in the past. For tracking requests with a custom date
1040 ; date is older than 1 day, Matomo requires an authenticated tracking requests. By setting this config to another value
1041 ; You can change how far back Matomo will track your requests without authentication. The configured value is in seconds.
1042 tracking_requests_require_authentication_when_custom_timestamp_newer_than = 86400;
1043
1044 ; if set to 1, all the SQL queries will be recorded by the profiler
1045 ; and a profiling summary will be printed at the end of the request
1046 ; NOTE: you must also set "[Tracker] debug = 1" to enable the profiler.
1047 enable_sql_profiler = 0
1048
1049 ; Enables using referrer spam blacklist.
1050 enable_spam_filter = 1
1051
1052 ; If a value greater than 0 is configured, Matomo will configure MySQL with the set lock wait timeout in seconds during a
1053 ; tracking request. This can be useful if you have a high concurrency load on your server and want to reduce the time of
1054 ; lock wait times. For example configuring a value of 3-10 seconds may give your Matomo a performance boost if you have
1055 ; many concurrent tracking requests for the same visitor. When enabling this feature, make sure the MySQL
1056 ; variable "innodb_rollback_on_timeout" is turned off. Only configure if really needed. The lower the value the more tracking
1057 ; requests may be discarded due to too low lock wait time.
1058 innodb_lock_wait_timeout = 0
1059
1060 ; Allows you to exclude specific requests from being tracked. The definition is similar to segments.
1061 ; The following operands are supported: Equals: `==`, Not equals: `!=`, Contains: `=@`, Not Contains: `!@`, Starts with: `=^`, Ends with: `=$`.
1062 ; The structure is as following: {tracking parameter}{operand}{value to match}.
1063 ; For example "e_c==Media" means that all tracking requests will be excluded where the event category is Media.
1064 ; Multiple exclusions can be configured separated by a comma. The request will be excluded if any expressions matches (not all of them). For example: "e_c==Media,action_name=@privacy".
1065 ; This would also exclude any request from being tracked where the page title contains privacy.
1066 ; All comparisons are performed case insensitive. The value to match on the right side should be URL encoded.
1067 ; For example: "action_name=^foo%2Cbar" would exclude page titles that start with "foo,bar".
1068 ; For a list of tracking parameters you can use on the left side view https://developer.matomo.org/api-reference/tracking-api
1069 exclude_requests = ""
1070
1071 ; Custom image to return when tracker URL includes &image=1
1072 ; Overrides the default 1x1 transparent gif
1073 ; This should either be the full path to the image file or a base64 encoded image string wrapped in quotes
1074 ; For both image files and base64 encoded strings supported image types are gif, jpg and png
1075 custom_image =
1076
1077 [Segments]
1078 ; Reports with segmentation in API requests are processed in real time.
1079 ; On high traffic websites it is recommended to pre-process the data
1080 ; so that the analytics reports are always fast to load.
1081 ; You can define below the list of Segments strings
1082 ; for which all reports should be Archived during the cron execution
1083 ; All segment values MUST be URL encoded.
1084 ;Segments[]="visitorType==new"
1085 ;Segments[]="visitorType==returning,visitorType==returningCustomer"
1086
1087 ; If you define Custom Variables for your visitor, for example set the visit type
1088 ;Segments[]="customVariableName1==VisitType;customVariableValue1==Customer"
1089
1090 [Deletelogs]
1091 ; delete_logs_enable - enable (1) or disable (0) delete log feature. Make sure that all archives for the given period have been processed (setup a cronjob!),
1092 ; otherwise you may lose tracking data.
1093 ; delete_logs_schedule_lowest_interval - lowest possible interval between two table deletes, for tables named log_* (in days, 1|7|30). Default: 7.
1094 ; delete_logs_older_than - delete data older than XX (days). Default: 180
1095 ; delete_logs_unused_actions_schedule_lowest_interval - lowest possible interval between two table deletes, for table log_action (in days, 1|7|30). Default: 30.
1096 ; delete_logs_max_rows_per_query and delete_logs_unused_actions_max_rows_per_query can be increased for large sites to speed up delete processes
1097 ;
1098 ; The higher value one assign to *_schedule_lowest_interval, the longer the data pruning/deletion will take. This is caused by the fact there is more data to evaluate and process every month, than every week.
1099 delete_logs_enable = 0
1100 delete_logs_schedule_lowest_interval = 7
1101 delete_logs_older_than = 180
1102 delete_logs_max_rows_per_query = 100000
1103 delete_logs_unused_actions_max_rows_per_query = 100000
1104 enable_auto_database_size_estimate = 1
1105 enable_database_size_estimate = 1
1106 delete_logs_unused_actions_schedule_lowest_interval = 30
1107
1108 [Deletereports]
1109 delete_reports_enable = 0
1110 delete_reports_older_than = 12
1111 delete_reports_keep_basic_metrics = 1
1112 delete_reports_keep_day_reports = 0
1113 delete_reports_keep_week_reports = 0
1114 delete_reports_keep_month_reports = 1
1115 delete_reports_keep_year_reports = 1
1116 delete_reports_keep_range_reports = 0
1117 delete_reports_keep_segment_reports = 0
1118
1119 [mail]
1120 defaultHostnameIfEmpty = defaultHostnameIfEmpty.example.org ; default Email @hostname, if current host can't be read from system variables
1121 transport = ; smtp (using the configuration below) or empty (using built-in mail() function)
1122 port = ; optional; defaults to 25 when security is none or tls; 465 for ssl
1123 host = ; SMTP server address
1124 type = ; SMTP Auth type. By default: NONE. For example: LOGIN
1125 username = ; SMTP username
1126 password = ; SMTP password
1127 encryption = ; SMTP transport-layer encryption, either 'none', 'ssl', 'tls', or empty (i.e., auto).
1128 ssl_disallow_self_signed = 1 ; set to 0 to allow email server with self signed cert (not recommended)
1129 ssl_verify_peer = 1 ; set to 0 to disable verifying the authenticity of the peer's certificate (not recommended)
1130 ssl_verify_peer_name = 1 ; set to 0 to disable verifying the authenticity of the peer's name (not recommended)
1131
1132 [proxy]
1133 type = BASIC ; proxy type for outbound/outgoing connections; currently, only BASIC is supported
1134 host = ; Proxy host: the host name of your proxy server (mandatory)
1135 port = ; Proxy port: the port that the proxy server listens to. There is no standard default, but 80, 1080, 3128, and 8080 are popular
1136 exclude = ; Comma separated list of hosts to exclude from proxy: optional; localhost is always excluded
1137 username = ; Proxy username: optional; if specified, password is mandatory
1138 password = ; Proxy password: optional; if specified, username is mandatory
1139
1140 [Languages]
1141 Languages[] = am
1142 Languages[] = ar
1143 Languages[] = be
1144 Languages[] = bg
1145 Languages[] = bn
1146 Languages[] = bs
1147 Languages[] = ca
1148 Languages[] = cs
1149 Languages[] = cy
1150 Languages[] = da
1151 Languages[] = de
1152 Languages[] = el
1153 Languages[] = en
1154 Languages[] = eo
1155 Languages[] = es
1156 Languages[] = es-ar
1157 Languages[] = et
1158 Languages[] = eu
1159 Languages[] = fa
1160 Languages[] = fi
1161 Languages[] = fr
1162 Languages[] = gu
1163 Languages[] = gl
1164 Languages[] = he
1165 Languages[] = hi
1166 Languages[] = hr
1167 Languages[] = hu
1168 Languages[] = id
1169 Languages[] = is
1170 Languages[] = it
1171 Languages[] = ja
1172 Languages[] = ka
1173 Languages[] = ko
1174 Languages[] = ku
1175 Languages[] = lt
1176 Languages[] = lv
1177 Languages[] = nb
1178 Languages[] = nl
1179 Languages[] = nn
1180 Languages[] = pl
1181 Languages[] = pt
1182 Languages[] = pt-br
1183 Languages[] = ro
1184 Languages[] = ru
1185 Languages[] = sk
1186 Languages[] = sl
1187 Languages[] = sq
1188 Languages[] = sr
1189 Languages[] = sv
1190 Languages[] = ta
1191 Languages[] = te
1192 Languages[] = th
1193 Languages[] = tl
1194 Languages[] = tr
1195 Languages[] = uk
1196 Languages[] = vi
1197 Languages[] = zh-cn
1198 Languages[] = zh-tw
1199
1200 [Plugins]
1201 ; list of plugins (in order they will be loaded) that are activated by default in the Matomo platform
1202 Plugins[] = CoreVue
1203 Plugins[] = CorePluginsAdmin
1204 Plugins[] = CoreAdminHome
1205 Plugins[] = CoreHome
1206 Plugins[] = WebsiteMeasurable
1207 Plugins[] = IntranetMeasurable
1208 Plugins[] = Diagnostics
1209 Plugins[] = CoreVisualizations
1210 Plugins[] = Proxy
1211 Plugins[] = API
1212 Plugins[] = Widgetize
1213 Plugins[] = Transitions
1214 Plugins[] = LanguagesManager
1215 Plugins[] = Actions
1216 Plugins[] = Dashboard
1217 Plugins[] = MultiSites
1218 Plugins[] = Referrers
1219 Plugins[] = UserLanguage
1220 Plugins[] = DevicesDetection
1221 Plugins[] = Goals
1222 Plugins[] = Ecommerce
1223 Plugins[] = SEO
1224 Plugins[] = Events
1225 Plugins[] = UserCountry
1226 Plugins[] = GeoIp2
1227 Plugins[] = VisitsSummary
1228 Plugins[] = VisitFrequency
1229 Plugins[] = VisitTime
1230 Plugins[] = VisitorInterest
1231 Plugins[] = RssWidget
1232 Plugins[] = Feedback
1233 Plugins[] = Monolog
1234
1235 Plugins[] = Login
1236 Plugins[] = TwoFactorAuth
1237 Plugins[] = UsersManager
1238 Plugins[] = SitesManager
1239 Plugins[] = Installation
1240 Plugins[] = CoreUpdater
1241 Plugins[] = CoreConsole
1242 Plugins[] = ScheduledReports
1243 Plugins[] = UserCountryMap
1244 Plugins[] = Live
1245 Plugins[] = PrivacyManager
1246 Plugins[] = ImageGraph
1247 Plugins[] = Annotations
1248 Plugins[] = MobileMessaging
1249 Plugins[] = Overlay
1250 Plugins[] = SegmentEditor
1251 Plugins[] = Insights
1252 Plugins[] = Morpheus
1253 Plugins[] = Contents
1254 Plugins[] = BulkTracking
1255 Plugins[] = Resolution
1256 Plugins[] = DevicePlugins
1257 Plugins[] = Heartbeat
1258 Plugins[] = Intl
1259 Plugins[] = Marketplace
1260 Plugins[] = ProfessionalServices
1261 Plugins[] = UserId
1262 Plugins[] = CustomJsTracker
1263 Plugins[] = Tour
1264 Plugins[] = PagePerformance
1265 Plugins[] = CustomDimensions
1266 Plugins[] = JsTrackerInstallCheck
1267
1268 [PluginsInstalled]
1269 PluginsInstalled[] = Diagnostics
1270 PluginsInstalled[] = Login
1271 PluginsInstalled[] = CoreAdminHome
1272 PluginsInstalled[] = UsersManager
1273 PluginsInstalled[] = SitesManager
1274 PluginsInstalled[] = Installation
1275 PluginsInstalled[] = Monolog
1276 PluginsInstalled[] = Intl
1277 PluginsInstalled[] = JsTrackerInstallCheck
1278
1279 [PagePerformance]
1280 ; The configuration below provides the possibility to enable capping of values used for generating 'sum/total' and 'average' metrics for page performance reports.
1281 ; This allows to reduce the impact of single failed performance measurements.
1282 ;
1283 ; The recommended caps are at 100-fold an avg/high value. Thereby one wrong value in 10,000 values results in a 1% deviation:
1284 ; (1x 100N + 9999x N) / 10000 ~= 101% N
1285 ;
1286 ; By default capping is disabled. To enable capping overwrite the configs below with a value higher than 0.
1287
1288 ; Cap for Network time: avg/high 100ms (recommended value: 10000)
1289 time_network_cap_duration_ms = 0
1290
1291 ; Cap for Server time: avg/high 500ms (recommended value: 50000)
1292 time_server_cap_duration_ms = 0
1293
1294 ; Cap for Transfer time: avg/high 250ms (recommended value: 25000)
1295 time_transfer_cap_duration_ms = 0
1296
1297 ; Cap for DOM processing time: avg/high 500ms (recommended value: 50000)
1298 time_dom_processing_cap_duration_ms = 0
1299
1300 ; Cap for DOM completion time: avg/high 1500ms (recommended value: 150000)
1301 time_dom_completion_cap_duration_ms = 0
1302
1303 ; Cap for On load time: avg/high 10ms (recommended value: 1000)
1304 time_on_load_cap_duration_ms = 0
1305
1306 [APISettings]
1307 ; Any key/value pair can be added in this section, they will be available via the REST call
1308 ; index.php?module=API&method=API.getSettings
1309 ; This can be used to expose values from Matomo, to control for example a Mobile app tracking
1310 SDK_batch_size = 10
1311 SDK_interval_value = 30
1312
1313 ; NOTE: do not directly edit this file! See notice at the top
1314