2018-11-01 21:36:54 +01:00
< ? php
// @codingStandardsIgnoreFile
/**
* @ file
* Drupal site - specific configuration file .
*
* IMPORTANT NOTE :
* This file may have been set to read - only by the Drupal installation program .
* If you make changes to this file , be sure to protect it again after making
* your modifications . Failure to remove write permissions to this file is a
* security risk .
*
* In order to use the selection rules below the multisite aliasing file named
* sites / sites . php must be present . Its optional settings will be loaded , and
* the aliases in the array $sites will override the default directory rules
* below . See sites / example . sites . php for more information about aliases .
*
* The configuration directory will be discovered by stripping the website ' s
* hostname from left to right and pathname from right to left . The first
* configuration file found will be used and any others will be ignored . If no
* other configuration file is found then the default configuration file at
* 'sites/default' will be used .
*
* For example , for a fictitious site installed at
* https :// www . drupal . org : 8080 / mysite / test / , the 'settings.php' file is searched
* for in the following directories :
*
* - sites / 8080. www . drupal . org . mysite . test
* - sites / www . drupal . org . mysite . test
* - sites / drupal . org . mysite . test
* - sites / org . mysite . test
*
* - sites / 8080. www . drupal . org . mysite
* - sites / www . drupal . org . mysite
* - sites / drupal . org . mysite
* - sites / org . mysite
*
* - sites / 8080. www . drupal . org
* - sites / www . drupal . org
* - sites / drupal . org
* - sites / org
*
* - sites / default
*
* Note that if you are installing on a non - standard port number , prefix the
* hostname with that number . For example ,
* https :// www . drupal . org : 8080 / mysite / test / could be loaded from
* sites / 8080. www . drupal . org . mysite . test /.
*
* @ see example . sites . php
* @ see \Drupal\Core\DrupalKernel :: getSitePath ()
*
* In addition to customizing application settings through variables in
* settings . php , you can create a services . yml file in the same directory to
* register custom , site - specific service definitions and / or swap out default
* implementations with custom ones .
*/
/**
* Database settings :
*
* The $databases array specifies the database connection or
* connections that Drupal may use . Drupal is able to connect
* to multiple databases , including multiple types of databases ,
* during the same request .
*
* One example of the simplest connection array is shown below . To use the
* sample settings , copy and uncomment the code below between the @ code and
* @ endcode lines and paste it after the $databases declaration . You will need
* to replace the database username and password and possibly the host and port
* with the appropriate credentials for your database system .
*
* The next section describes how to customize the $databases array for more
* specific needs .
*
* @ code
2019-05-24 22:38:39 +02:00
* $databases [ 'default' ][ 'default' ] = [
2018-11-01 21:36:54 +01:00
* 'database' => 'databasename' ,
* 'username' => 'sqlusername' ,
* 'password' => 'sqlpassword' ,
* 'host' => 'localhost' ,
* 'port' => '3306' ,
* 'driver' => 'mysql' ,
* 'prefix' => '' ,
* 'collation' => 'utf8mb4_general_ci' ,
2019-05-24 22:38:39 +02:00
* ];
2018-11-01 21:36:54 +01:00
* @ endcode
*/
$databases = [];
/**
* Customizing database settings .
*
* Many of the values of the $databases array can be customized for your
* particular database system . Refer to the sample in the section above as a
* starting point .
*
* The " driver " property indicates what Drupal database driver the
* connection should use . This is usually the same as the name of the
* database type , such as mysql or sqlite , but not always . The other
* properties will vary depending on the driver . For SQLite , you must
* specify a database file name in a directory that is writable by the
* webserver . For most other drivers , you must specify a
* username , password , host , and database name .
*
2020-11-03 18:14:36 +01:00
* Drupal core implements drivers for mysql , pgsql , and sqlite . Other drivers
* can be provided by contributed or custom modules . To use a contributed or
* custom driver , the " namespace " property must be set to the namespace of the
* driver . The code in this namespace must be autoloadable prior to connecting
* to the database , and therefore , prior to when module root namespaces are
* added to the autoloader . To add the driver ' s namespace to the autoloader ,
* set the " autoload " property to the PSR - 4 base directory of the driver ' s
* namespace . This is optional for projects managed with Composer if the
* driver 's namespace is in Composer' s autoloader .
*
2018-11-01 21:36:54 +01:00
* Transaction support is enabled by default for all drivers that support it ,
* including MySQL . To explicitly disable it , set the 'transactions' key to
* FALSE .
* Note that some configurations of MySQL , such as the MyISAM engine , don ' t
* support it and will proceed silently even if enabled . If you experience
* transaction related crashes with such configuration , set the 'transactions'
* key to FALSE .
*
* For each database , you may optionally specify multiple " target " databases .
* A target database allows Drupal to try to send certain queries to a
* different database if it can but fall back to the default connection if not .
* That is useful for primary / replica replication , as Drupal may try to connect
* to a replica server when appropriate and if one is not available will simply
* fall back to the single primary server ( The terms primary / replica are
* traditionally referred to as master / slave in database server documentation ) .
*
* The general format for the $databases array is as follows :
* @ code
* $databases [ 'default' ][ 'default' ] = $info_array ;
* $databases [ 'default' ][ 'replica' ][] = $info_array ;
* $databases [ 'default' ][ 'replica' ][] = $info_array ;
* $databases [ 'extra' ][ 'default' ] = $info_array ;
* @ endcode
*
* In the above example , $info_array is an array of settings described above .
* The first line sets a " default " database that has one primary database
* ( the second level default ) . The second and third lines create an array
* of potential replica databases . Drupal will select one at random for a given
* request as needed . The fourth line creates a new database with a name of
* " extra " .
*
* You can optionally set prefixes for some or all database table names
* by using the 'prefix' setting . If a prefix is specified , the table
* name will be prepended with its value . Be sure to use valid database
* characters only , usually alphanumeric and underscore . If no prefixes
* are desired , leave it as an empty string '' .
*
* To have all database names prefixed , set 'prefix' as a string :
* @ code
* 'prefix' => 'main_' ,
* @ endcode
*
* Per - table prefixes are deprecated as of Drupal 8.2 , and will be removed in
* Drupal 9.0 . After that , only a single prefix for all tables will be
* supported .
*
* To provide prefixes for specific tables , set 'prefix' as an array .
* The array ' s keys are the table names and the values are the prefixes .
* The 'default' element is mandatory and holds the prefix for any tables
* not specified elsewhere in the array . Example :
* @ code
2019-05-24 22:38:39 +02:00
* 'prefix' => [
2018-11-01 21:36:54 +01:00
* 'default' => 'main_' ,
* 'users' => 'shared_' ,
* 'sessions' => 'shared_' ,
* 'role' => 'shared_' ,
* 'authmap' => 'shared_' ,
2019-05-24 22:38:39 +02:00
* ],
2018-11-01 21:36:54 +01:00
* @ endcode
* You can also use a reference to a schema / database as a prefix . This may be
* useful if your Drupal installation exists in a schema that is not the default
* or you want to access several databases from the same code base at the same
* time .
* Example :
* @ code
2019-05-24 22:38:39 +02:00
* 'prefix' => [
2018-11-01 21:36:54 +01:00
* 'default' => 'main.' ,
* 'users' => 'shared.' ,
* 'sessions' => 'shared.' ,
* 'role' => 'shared.' ,
* 'authmap' => 'shared.' ,
2019-05-24 22:38:39 +02:00
* ];
2018-11-01 21:36:54 +01:00
* @ endcode
* NOTE : MySQL and SQLite ' s definition of a schema is a database .
*
* Advanced users can add or override initial commands to execute when
* connecting to the database server , as well as PDO connection settings . For
* example , to enable MySQL SELECT queries to exceed the max_join_size system
* variable , and to reduce the database connection timeout to 5 seconds :
* @ code
2019-05-24 22:38:39 +02:00
* $databases [ 'default' ][ 'default' ] = [
* 'init_commands' => [
2018-11-01 21:36:54 +01:00
* 'big_selects' => 'SET SQL_BIG_SELECTS=1' ,
2019-05-24 22:38:39 +02:00
* ],
* 'pdo' => [
2018-11-01 21:36:54 +01:00
* PDO :: ATTR_TIMEOUT => 5 ,
2019-05-24 22:38:39 +02:00
* ],
* ];
2018-11-01 21:36:54 +01:00
* @ endcode
*
* WARNING : The above defaults are designed for database portability . Changing
* them may cause unexpected behavior , including potential data loss . See
* https :// www . drupal . org / developing / api / database / configuration for more
* information on these defaults and the potential issues .
*
* More details can be found in the constructor methods for each driver :
* - \Drupal\Core\Database\Driver\mysql\Connection :: __construct ()
* - \Drupal\Core\Database\Driver\pgsql\Connection :: __construct ()
* - \Drupal\Core\Database\Driver\sqlite\Connection :: __construct ()
*
* Sample Database configuration format for PostgreSQL ( pgsql ) :
* @ code
2019-05-24 22:38:39 +02:00
* $databases [ 'default' ][ 'default' ] = [
2018-11-01 21:36:54 +01:00
* 'driver' => 'pgsql' ,
* 'database' => 'databasename' ,
* 'username' => 'sqlusername' ,
* 'password' => 'sqlpassword' ,
* 'host' => 'localhost' ,
* 'prefix' => '' ,
2019-05-24 22:38:39 +02:00
* ];
2018-11-01 21:36:54 +01:00
* @ endcode
*
* Sample Database configuration format for SQLite ( sqlite ) :
* @ code
2019-05-24 22:38:39 +02:00
* $databases [ 'default' ][ 'default' ] = [
2018-11-01 21:36:54 +01:00
* 'driver' => 'sqlite' ,
* 'database' => '/path/to/databasefilename' ,
2019-05-24 22:38:39 +02:00
* ];
2018-11-01 21:36:54 +01:00
* @ endcode
2020-11-03 18:14:36 +01:00
*
* Sample Database configuration format for a driver in a contributed module :
* @ code
* $databases [ 'default' ][ 'default' ] = [
* 'driver' => 'mydriver' ,
* 'namespace' => 'Drupal\mymodule\Driver\Database\mydriver' ,
* 'autoload' => 'modules/mymodule/src/Driver/Database/mydriver/' ,
* 'database' => 'databasename' ,
* 'username' => 'sqlusername' ,
* 'password' => 'sqlpassword' ,
* 'host' => 'localhost' ,
* 'prefix' => '' ,
* ];
* @ endcode
2018-11-01 21:36:54 +01:00
*/
/**
* Location of the site configuration files .
*
2020-02-17 15:43:34 +01:00
* The $settings [ 'config_sync_directory' ] specifies the location of file system
* directory used for syncing configuration data . On install , the directory is
* created . This is used for configuration imports .
2018-11-01 21:36:54 +01:00
*
2020-02-17 15:43:34 +01:00
* The default location for this directory is inside a randomly - named
* directory in the public files path . The setting below allows you to set
* its location .
2018-11-01 21:36:54 +01:00
*/
2020-02-17 15:43:34 +01:00
# $settings['config_sync_directory'] = '/directory/outside/webroot';
2018-11-01 21:36:54 +01:00
/**
* Settings :
*
* $settings contains environment - specific configuration , such as the files
* directory and reverse proxy address , and temporary configuration , such as
* security overrides .
*
* @ see \Drupal\Core\Site\Settings :: get ()
*/
/**
* Salt for one - time login links , cancel links , form tokens , etc .
*
* This variable will be set to a random value by the installer . All one - time
* login links will be invalidated if the value is changed . Note that if your
* site is deployed on a cluster of web servers , you must ensure that this
* variable has the same value on each server .
*
* For enhanced security , you may set this variable to the contents of a file
* outside your document root ; you should also ensure that this file is not
* stored with backups of your database .
*
* Example :
* @ code
* $settings [ 'hash_salt' ] = file_get_contents ( '/home/example/salt.txt' );
* @ endcode
*/
$settings [ 'hash_salt' ] = '' ;
/**
* Deployment identifier .
*
* Drupal ' s dependency injection container will be automatically invalidated and
* rebuilt when the Drupal core version changes . When updating contributed or
* custom code that changes the container , changing this identifier will also
* allow the container to be invalidated as soon as code is deployed .
*/
# $settings['deployment_identifier'] = \Drupal::VERSION;
/**
* Access control for update . php script .
*
* If you are updating your Drupal installation using the update . php script but
* are not logged in using either an account with the " Administer software
* updates " permission or the site maintenance account (the account that was
* created during installation ), you will need to modify the access check
* statement below . Change the FALSE to a TRUE to disable the access check .
* After finishing the upgrade , be sure to open this file again and change the
* TRUE back to a FALSE !
*/
$settings [ 'update_free_access' ] = FALSE ;
/**
* External access proxy settings :
*
* If your site must access the Internet via a web proxy then you can enter the
* proxy settings here . Set the full URL of the proxy , including the port , in
* variables :
* - $settings [ 'http_client_config' ][ 'proxy' ][ 'http' ] : The proxy URL for HTTP
* requests .
* - $settings [ 'http_client_config' ][ 'proxy' ][ 'https' ] : The proxy URL for HTTPS
* requests .
* You can pass in the user name and password for basic authentication in the
* URLs in these settings .
*
* You can also define an array of host names that can be accessed directly ,
* bypassing the proxy , in $settings [ 'http_client_config' ][ 'proxy' ][ 'no' ] .
*/
# $settings['http_client_config']['proxy']['http'] = 'http://proxy_user:proxy_pass@example.com:8080';
# $settings['http_client_config']['proxy']['https'] = 'http://proxy_user:proxy_pass@example.com:8080';
# $settings['http_client_config']['proxy']['no'] = ['127.0.0.1', 'localhost'];
/**
* Reverse Proxy Configuration :
*
* Reverse proxy servers are often used to enhance the performance
* of heavily visited sites and may also provide other site caching ,
* security , or encryption benefits . In an environment where Drupal
* is behind a reverse proxy , the real IP address of the client should
* be determined such that the correct client IP address is available
* to Drupal ' s logging , statistics , and access management systems . In
* the most simple scenario , the proxy server will add an
* X - Forwarded - For header to the request that contains the client IP
* address . However , HTTP headers are vulnerable to spoofing , where a
* malicious client could bypass restrictions by setting the
* X - Forwarded - For header directly . Therefore , Drupal ' s proxy
* configuration requires the IP addresses of all remote proxies to be
* specified in $settings [ 'reverse_proxy_addresses' ] to work correctly .
*
2019-05-16 22:28:03 +02:00
* Enable this setting to get Drupal to determine the client IP from the
* X - Forwarded - For header . If you are unsure about this setting , do not have a
* reverse proxy , or Drupal operates in a shared hosting environment , this
* setting should remain commented out .
2018-11-01 21:36:54 +01:00
*
* In order for this setting to be used you must specify every possible
* reverse proxy IP address in $settings [ 'reverse_proxy_addresses' ] .
* If a complete list of reverse proxies is not available in your
* environment ( for example , if you use a CDN ) you may set the
* $_SERVER [ 'REMOTE_ADDR' ] variable directly in settings . php .
* Be aware , however , that it is likely that this would allow IP
* address spoofing unless more advanced precautions are taken .
*/
# $settings['reverse_proxy'] = TRUE;
/**
* Specify every reverse proxy IP address in your environment .
* This setting is required if $settings [ 'reverse_proxy' ] is TRUE .
*/
# $settings['reverse_proxy_addresses'] = ['a.b.c.d', ...];
/**
2019-05-16 22:28:03 +02:00
* Reverse proxy trusted headers .
*
* Sets which headers to trust from your reverse proxy .
*
* Common values are :
* - \Symfony\Component\HttpFoundation\Request :: HEADER_X_FORWARDED_ALL
* - \Symfony\Component\HttpFoundation\Request :: HEADER_FORWARDED
*
* Note the default value of
* @ code
* \Symfony\Component\HttpFoundation\Request :: HEADER_X_FORWARDED_ALL | \Symfony\Component\HttpFoundation\Request :: HEADER_FORWARDED
* @ endcode
* is not secure by default . The value should be set to only the specific
* headers the reverse proxy uses . For example :
* @ code
* \Symfony\Component\HttpFoundation\Request :: HEADER_X_FORWARDED_ALL
* @ endcode
* This would trust the following headers :
* - X_FORWARDED_FOR
* - X_FORWARDED_HOST
* - X_FORWARDED_PROTO
* - X_FORWARDED_PORT
*
* @ see \Symfony\Component\HttpFoundation\Request :: HEADER_X_FORWARDED_ALL
* @ see \Symfony\Component\HttpFoundation\Request :: HEADER_FORWARDED
* @ see \Symfony\Component\HttpFoundation\Request :: setTrustedProxies
2018-11-01 21:36:54 +01:00
*/
2019-05-16 22:28:03 +02:00
# $settings['reverse_proxy_trusted_headers'] = \Symfony\Component\HttpFoundation\Request::HEADER_X_FORWARDED_ALL | \Symfony\Component\HttpFoundation\Request::HEADER_FORWARDED;
2018-11-01 21:36:54 +01:00
/**
* Page caching :
*
* By default , Drupal sends a " Vary: Cookie " HTTP header for anonymous page
* views . This tells a HTTP proxy that it may return a page from its local
* cache without contacting the web server , if the user sends the same Cookie
* header as the user who originally requested the cached page . Without " Vary:
* Cookie " , authenticated users would also be served the anonymous page from
* the cache . If the site has mostly anonymous users except a few known
* editors / administrators , the Vary header can be omitted . This allows for
* better caching in HTTP proxies ( including reverse proxies ), i . e . even if
* clients send different cookies , they still get content served from the cache .
* However , authenticated users should access the site directly ( i . e . not use an
* HTTP proxy , and bypass the reverse proxy if one is used ) in order to avoid
* getting cached pages from the proxy .
*/
# $settings['omit_vary_cookie'] = TRUE;
/**
* Cache TTL for client error ( 4 xx ) responses .
*
* Items cached per - URL tend to result in a large number of cache items , and
* this can be problematic on 404 pages which by their nature are unbounded . A
* fixed TTL can be set for these items , defaulting to one hour , so that cache
* backends which do not support LRU can purge older entries . To disable caching
* of client error responses set the value to 0. Currently applies only to
* page_cache module .
*/
# $settings['cache_ttl_4xx'] = 3600;
/**
* Expiration of cached forms .
*
* Drupal ' s Form API stores details of forms in a cache and these entries are
* kept for at least 6 hours by default . Expired entries are cleared by cron .
*
* @ see \Drupal\Core\Form\FormCache :: setCache ()
*/
# $settings['form_cache_expiration'] = 21600;
/**
* Class Loader .
*
* If the APC extension is detected , the Symfony APC class loader is used for
* performance reasons . Detection can be prevented by setting
* class_loader_auto_detect to false , as in the example below .
*/
# $settings['class_loader_auto_detect'] = FALSE;
/*
* If the APC extension is not detected , either because APC is missing or
* because auto - detection has been disabled , auto - loading falls back to
* Composer ' s ClassLoader , which is good for development as it does not break
* when code is moved in the file system . You can also decorate the base class
* loader with another cached solution than the Symfony APC class loader , as
* all production sites should have a cached class loader of some sort enabled .
*
* To do so , you may decorate and replace the local $class_loader variable . For
* example , to use Symfony ' s APC class loader without automatic detection ,
* uncomment the code below .
*/
/*
if ( $settings [ 'hash_salt' ]) {
$prefix = 'drupal.' . hash ( 'sha256' , 'drupal.' . $settings [ 'hash_salt' ]);
$apc_loader = new \Symfony\Component\ClassLoader\ApcClassLoader ( $prefix , $class_loader );
unset ( $prefix );
$class_loader -> unregister ();
$apc_loader -> register ();
$class_loader = $apc_loader ;
}
*/
/**
* Authorized file system operations :
*
* The Update Manager module included with Drupal provides a mechanism for
* site administrators to securely install missing updates for the site
* directly through the web user interface . On securely - configured servers ,
* the Update manager will require the administrator to provide SSH or FTP
* credentials before allowing the installation to proceed ; this allows the
* site to update the new files as the user who owns all the Drupal files ,
* instead of as the user the webserver is running as . On servers where the
* webserver user is itself the owner of the Drupal files , the administrator
* will not be prompted for SSH or FTP credentials ( note that these server
* setups are common on shared hosting , but are inherently insecure ) .
*
* Some sites might wish to disable the above functionality , and only update
* the code directly via SSH or FTP themselves . This setting completely
* disables all functionality related to these authorized file operations .
*
* @ see https :// www . drupal . org / node / 244924
*
* Remove the leading hash signs to disable .
*/
# $settings['allow_authorize_operations'] = FALSE;
/**
* Default mode for directories and files written by Drupal .
*
* Value should be in PHP Octal Notation , with leading zero .
*/
# $settings['file_chmod_directory'] = 0775;
# $settings['file_chmod_file'] = 0664;
/**
* Public file base URL :
*
* An alternative base URL to be u sed for serving public files . This must
* include any leading directory path .
*
* A different value from the domain used by Drupal to be used for accessing
* public files . This can be used for a simple CDN integration , or to improve
* security by serving user - uploaded files from a different domain or subdomain
* pointing to the same server . Do not include a trailing slash .
*/
# $settings['file_public_base_url'] = 'http://downloads.example.com/files';
/**
* Public file path :
*
* A local file system path where public files will be stored . This directory
* must exist and be writable by Drupal . This directory must be relative to
* the Drupal installation directory and be accessible over the web .
*/
# $settings['file_public_path'] = 'sites/default/files';
/**
* Private file path :
*
* A local file system path where private files will be stored . This directory
* must be absolute , outside of the Drupal installation directory and not
* accessible over the web .
*
* Note : Caches need to be cleared when this value is changed to make the
* private :// stream wrapper available to the system .
*
* See https :// www . drupal . org / documentation / modules / file for more information
* about securing private files .
*/
# $settings['file_private_path'] = '';
2020-02-17 15:43:34 +01:00
/**
* Temporary file path :
*
* A local file system path where temporary files will be stored . This directory
* must be absolute , outside of the Drupal installation directory and not
* accessible over the web .
*
* If this is not set , the default for the operating system will be used .
*
* @ see \Drupal\Component\FileSystem\FileSystem :: getOsTemporaryDirectory ()
*/
# $settings['file_temp_path'] = '/tmp';
2018-11-01 21:36:54 +01:00
/**
* Session write interval :
*
* Set the minimum interval between each session write to database .
* For performance reasons it defaults to 180.
*/
# $settings['session_write_interval'] = 180;
/**
* String overrides :
*
* To override specific strings on your site with or without enabling the Locale
* module , add an entry to this list . This functionality allows you to change
* a small number of your site ' s default English language interface strings .
*
* Remove the leading hash signs to enable .
*
* The " en " part of the variable name , is dynamic and can be any langcode of
* any added language . ( eg locale_custom_strings_de for german ) .
*/
# $settings['locale_custom_strings_en'][''] = [
# 'forum' => 'Discussion board',
# '@count min' => '@count minutes',
# ];
/**
* A custom theme for the offline page :
*
* This applies when the site is explicitly set to maintenance mode through the
* administration page or when the database is inactive due to an error .
* The template file should also be copied into the theme . It is located inside
* 'core/modules/system/templates/maintenance-page.html.twig' .
*
* Note : This setting does not apply to installation and update pages .
*/
# $settings['maintenance_theme'] = 'bartik';
/**
* PHP settings :
*
* To see what PHP settings are possible , including whether they can be set at
* runtime ( by using ini_set ()), read the PHP documentation :
* http :// php . net / manual / ini . list . php
* See \Drupal\Core\DrupalKernel :: bootEnvironment () for required runtime
* settings and the . htaccess file for non - runtime settings .
* Settings defined there should not be duplicated here so as to avoid conflict
* issues .
*/
/**
* If you encounter a situation where users post a large amount of text , and
* the result is stripped out upon viewing but can still be edited , Drupal ' s
* output filter may not have sufficient memory to process it . If you
* experience this issue , you may wish to uncomment the following two lines
* and increase the limits of these variables . For more information , see
* http :// php . net / manual / pcre . configuration . php .
*/
# ini_set('pcre.backtrack_limit', 200000);
# ini_set('pcre.recursion_limit', 200000);
/**
* Configuration overrides .
*
* To globally override specific configuration values for this site ,
* set them here . You usually don ' t need to use this feature . This is
* useful in a configuration file for a vhost or directory , rather than
* the default settings . php .
*
* Note that any values you provide in these variable overrides will not be
* viewable from the Drupal administration interface . The administration
* interface displays the values stored in configuration so that you can stage
* changes to other environments that don ' t have the overrides .
*
* There are particular configuration values that are risky to override . For
* example , overriding the list of installed modules in 'core.extension' is not
* supported as module install or uninstall has not occurred . Other examples
* include field storage configuration , because it has effects on database
* structure , and 'core.menu.static_menu_link_overrides' since this is cached in
* a way that is not config override aware . Also , note that changing
* configuration values in settings . php will not fire any of the configuration
* change events .
*/
# $config['system.site']['name'] = 'My Drupal site';
# $config['user.settings']['anonymous'] = 'Visitor';
/**
* Fast 404 pages :
*
* Drupal can generate fully themed 404 pages . However , some of these responses
* are for images or other resource files that are not displayed to the user .
* This can waste bandwidth , and also generate server load .
*
* The options below return a simple , fast 404 page for URLs matching a
* specific pattern :
* - $config [ 'system.performance' ][ 'fast_404' ][ 'exclude_paths' ] : A regular
* expression to match paths to exclude , such as images generated by image
* styles , or dynamically - resized images . The default pattern provided below
* also excludes the private file system . If you need to add more paths , you
* can add '|path' to the expression .
* - $config [ 'system.performance' ][ 'fast_404' ][ 'paths' ] : A regular expression to
* match paths that should return a simple 404 page , rather than the fully
* themed 404 page . If you don ' t have any aliases ending in htm or html you
* can add '|s?html?' to the expression .
* - $config [ 'system.performance' ][ 'fast_404' ][ 'html' ] : The html to return for
* simple 404 pages .
*
* Remove the leading hash signs if you would like to alter this functionality .
*/
# $config['system.performance']['fast_404']['exclude_paths'] = '/\/(?:styles)|(?:system\/files)\//';
# $config['system.performance']['fast_404']['paths'] = '/\.(?:txt|png|gif|jpe?g|css|js|ico|swf|flv|cgi|bat|pl|dll|exe|asp)$/i';
# $config['system.performance']['fast_404']['html'] = '<!DOCTYPE html><html><head><title>404 Not Found</title></head><body><h1>Not Found</h1><p>The requested URL "@path" was not found on this server.</p></body></html>';
/**
* Load services definition file .
*/
$settings [ 'container_yamls' ][] = $app_root . '/' . $site_path . '/services.yml' ;
/**
* Override the default service container class .
*
* This is useful for example to trace the service container for performance
* tracking purposes , for testing a service container with an error condition or
* to test a service container that throws an exception .
*/
# $settings['container_base_class'] = '\Drupal\Core\DependencyInjection\Container';
/**
* Override the default yaml parser class .
*
* Provide a fully qualified class name here if you would like to provide an
* alternate implementation YAML parser . The class must implement the
* \Drupal\Component\Serialization\SerializationInterface interface .
*/
# $settings['yaml_parser_class'] = NULL;
/**
* Trusted host configuration .
*
* Drupal core can use the Symfony trusted host mechanism to prevent HTTP Host
* header spoofing .
*
* To enable the trusted host mechanism , you enable your allowable hosts
* in $settings [ 'trusted_host_patterns' ] . This should be an array of regular
* expression patterns , without delimiters , representing the hosts you would
* like to allow .
*
* For example :
* @ code
2019-05-24 22:38:39 +02:00
* $settings [ 'trusted_host_patterns' ] = [
2018-11-01 21:36:54 +01:00
* '^www\.example\.com$' ,
2019-05-24 22:38:39 +02:00
* ];
2018-11-01 21:36:54 +01:00
* @ endcode
* will allow the site to only run from www . example . com .
*
* If you are running multisite , or if you are running your site from
* different domain names ( eg , you don ' t redirect http :// www . example . com to
* http :// example . com ), you should specify all of the host patterns that are
* allowed by your site .
*
* For example :
* @ code
2019-05-24 22:38:39 +02:00
* $settings [ 'trusted_host_patterns' ] = [
2018-11-01 21:36:54 +01:00
* '^example\.com$' ,
* '^.+\.example\.com$' ,
* '^example\.org$' ,
* '^.+\.example\.org$' ,
2019-05-24 22:38:39 +02:00
* ];
2018-11-01 21:36:54 +01:00
* @ endcode
* will allow the site to run off of all variants of example . com and
* example . org , with all subdomains included .
*/
/**
* The default list of directories that will be ignored by Drupal ' s file API .
*
* By default ignore node_modules and bower_components folders to avoid issues
* with common frontend tools and recursive scanning of directories looking for
* extensions .
*
2020-02-17 15:43:34 +01:00
* @ see \Drupal\Core\File\FileSystemInterface :: scanDirectory ()
2018-11-01 21:36:54 +01:00
* @ see \Drupal\Core\Extension\ExtensionDiscovery :: scanDirectory ()
*/
$settings [ 'file_scan_ignore_directories' ] = [
'node_modules' ,
'bower_components' ,
];
/**
* The default number of entities to update in a batch process .
*
* This is used by update and post - update functions that need to go through and
* change all the entities on a site , so it is useful to increase this number
* if your hosting configuration ( i . e . RAM allocation , CPU speed ) allows for a
* larger number of entities to be processed in a single batch run .
*/
$settings [ 'entity_update_batch_size' ] = 50 ;
2019-05-16 22:28:03 +02:00
/**
* Entity update backup .
*
* This is used to inform the entity storage handler that the backup tables as
* well as the original entity type and field storage definitions should be
* retained after a successful entity update process .
*/
$settings [ 'entity_update_backup' ] = TRUE ;
2020-11-03 18:14:36 +01:00
/**
* Node migration type .
*
* This is used to force the migration system to use the classic node migrations
* instead of the default complete node migrations . The migration system will
* use the classic node migration only if there are existing migrate_map tables
* for the classic node migrations and they contain data . These tables may not
* exist if you are developing custom migrations and do not want to use the
* complete node migrations . Set this to TRUE to force the use of the classic
* node migrations .
*/
$settings [ 'migrate_node_migrate_type_classic' ] = FALSE ;
2018-11-01 21:36:54 +01:00
/**
* Load local development override configuration , if available .
*
2020-11-03 18:14:36 +01:00
* Create a settings . local . php file to override variables on secondary ( staging ,
* development , etc . ) installations of this site .
*
* Typical uses of settings . local . php include :
* - Disabling caching .
* - Disabling JavaScript / CSS compression .
* - Rerouting outgoing emails .
2018-11-01 21:36:54 +01:00
*
* Keep this code block at the end of this file to take full effect .
*/
#
# if (file_exists($app_root . '/' . $site_path . '/settings.local.php')) {
# include $app_root . '/' . $site_path . '/settings.local.php';
# }