github.com/drud/ddev@v1.21.5-alpha1.0.20230226034409-94fcc4b94453/pkg/ddevapp/drupal/drupal7/settings.php (about) 1 <?php 2 3 /** 4 * @file 5 * Drupal site-specific configuration file. 6 * 7 * IMPORTANT NOTE: 8 * This file may have been set to read-only by the Drupal installation program. 9 * If you make changes to this file, be sure to protect it again after making 10 * your modifications. Failure to remove write permissions to this file is a 11 * security risk. 12 * 13 * The configuration file to be loaded is based upon the rules below. However 14 * if the multisite aliasing file named sites/sites.php is present, it will be 15 * loaded, and the aliases in the array $sites will override the default 16 * directory rules below. See sites/example.sites.php for more information about 17 * aliases. 18 * 19 * The configuration directory will be discovered by stripping the website's 20 * hostname from left to right and pathname from right to left. The first 21 * configuration file found will be used and any others will be ignored. If no 22 * other configuration file is found then the default configuration file at 23 * 'sites/default' will be used. 24 * 25 * For example, for a fictitious site installed at 26 * http://www.drupal.org:8080/mysite/test/, the 'settings.php' file is searched 27 * for in the following directories: 28 * 29 * - sites/8080.www.drupal.org.mysite.test 30 * - sites/www.drupal.org.mysite.test 31 * - sites/drupal.org.mysite.test 32 * - sites/org.mysite.test 33 * 34 * - sites/8080.www.drupal.org.mysite 35 * - sites/www.drupal.org.mysite 36 * - sites/drupal.org.mysite 37 * - sites/org.mysite 38 * 39 * - sites/8080.www.drupal.org 40 * - sites/www.drupal.org 41 * - sites/drupal.org 42 * - sites/org 43 * 44 * - sites/default 45 * 46 * Note that if you are installing on a non-standard port number, prefix the 47 * hostname with that number. For example, 48 * http://www.drupal.org:8080/mysite/test/ could be loaded from 49 * sites/8080.www.drupal.org.mysite.test/. 50 * 51 * @see example.sites.php 52 * @see conf_path() 53 */ 54 55 /** 56 * Database settings: 57 * 58 * The $databases array specifies the database connection or 59 * connections that Drupal may use. Drupal is able to connect 60 * to multiple databases, including multiple types of databases, 61 * during the same request. 62 * 63 * Each database connection is specified as an array of settings, 64 * similar to the following: 65 * @code 66 * array( 67 * 'driver' => 'mysql', 68 * 'database' => 'databasename', 69 * 'username' => 'username', 70 * 'password' => 'password', 71 * 'host' => 'localhost', 72 * 'port' => 3306, 73 * 'prefix' => 'myprefix_', 74 * 'collation' => 'utf8_general_ci', 75 * ); 76 * @endcode 77 * 78 * The "driver" property indicates what Drupal database driver the 79 * connection should use. This is usually the same as the name of the 80 * database type, such as mysql or sqlite, but not always. The other 81 * properties will vary depending on the driver. For SQLite, you must 82 * specify a database file name in a directory that is writable by the 83 * webserver. For most other drivers, you must specify a 84 * username, password, host, and database name. 85 * 86 * Transaction support is enabled by default for all drivers that support it, 87 * including MySQL. To explicitly disable it, set the 'transactions' key to 88 * FALSE. 89 * Note that some configurations of MySQL, such as the MyISAM engine, don't 90 * support it and will proceed silently even if enabled. If you experience 91 * transaction related crashes with such configuration, set the 'transactions' 92 * key to FALSE. 93 * 94 * For each database, you may optionally specify multiple "target" databases. 95 * A target database allows Drupal to try to send certain queries to a 96 * different database if it can but fall back to the default connection if not. 97 * That is useful for master/slave replication, as Drupal may try to connect 98 * to a slave server when appropriate and if one is not available will simply 99 * fall back to the single master server. 100 * 101 * The general format for the $databases array is as follows: 102 * @code 103 * $databases['default']['default'] = $info_array; 104 * $databases['default']['slave'][] = $info_array; 105 * $databases['default']['slave'][] = $info_array; 106 * $databases['extra']['default'] = $info_array; 107 * @endcode 108 * 109 * In the above example, $info_array is an array of settings described above. 110 * The first line sets a "default" database that has one master database 111 * (the second level default). The second and third lines create an array 112 * of potential slave databases. Drupal will select one at random for a given 113 * request as needed. The fourth line creates a new database with a name of 114 * "extra". 115 * 116 * For a single database configuration, the following is sufficient: 117 * @code 118 * $databases['default']['default'] = array( 119 * 'driver' => 'mysql', 120 * 'database' => 'databasename', 121 * 'username' => 'username', 122 * 'password' => 'password', 123 * 'host' => 'localhost', 124 * 'prefix' => 'main_', 125 * 'collation' => 'utf8_general_ci', 126 * ); 127 * @endcode 128 * 129 * For handling full UTF-8 in MySQL, including multi-byte characters such as 130 * emojis, Asian symbols, and mathematical symbols, you may set the collation 131 * and charset to "utf8mb4" prior to running install.php: 132 * @code 133 * $databases['default']['default'] = array( 134 * 'driver' => 'mysql', 135 * 'database' => 'databasename', 136 * 'username' => 'username', 137 * 'password' => 'password', 138 * 'host' => 'localhost', 139 * 'charset' => 'utf8mb4', 140 * 'collation' => 'utf8mb4_general_ci', 141 * ); 142 * @endcode 143 * When using this setting on an existing installation, ensure that all existing 144 * tables have been converted to the utf8mb4 charset, for example by using the 145 * utf8mb4_convert contributed project available at 146 * https://www.drupal.org/project/utf8mb4_convert, so as to prevent mixing data 147 * with different charsets. 148 * Note this should only be used when all of the following conditions are met: 149 * - In order to allow for large indexes, MySQL must be set up with the 150 * following my.cnf settings: 151 * [mysqld] 152 * innodb_large_prefix=true 153 * innodb_file_format=barracuda 154 * innodb_file_per_table=true 155 * These settings are available as of MySQL 5.5.14, and are defaults in 156 * MySQL 5.7.7 and up. 157 * - The PHP MySQL driver must support the utf8mb4 charset (libmysqlclient 158 * 5.5.3 and up, as well as mysqlnd 5.0.9 and up). 159 * - The MySQL server must support the utf8mb4 charset (5.5.3 and up). 160 * 161 * You can optionally set prefixes for some or all database table names 162 * by using the 'prefix' setting. If a prefix is specified, the table 163 * name will be prepended with its value. Be sure to use valid database 164 * characters only, usually alphanumeric and underscore. If no prefixes 165 * are desired, leave it as an empty string ''. 166 * 167 * To have all database names prefixed, set 'prefix' as a string: 168 * @code 169 * 'prefix' => 'main_', 170 * @endcode 171 * To provide prefixes for specific tables, set 'prefix' as an array. 172 * The array's keys are the table names and the values are the prefixes. 173 * The 'default' element is mandatory and holds the prefix for any tables 174 * not specified elsewhere in the array. Example: 175 * @code 176 * 'prefix' => array( 177 * 'default' => 'main_', 178 * 'users' => 'shared_', 179 * 'sessions' => 'shared_', 180 * 'role' => 'shared_', 181 * 'authmap' => 'shared_', 182 * ), 183 * @endcode 184 * You can also use a reference to a schema/database as a prefix. This may be 185 * useful if your Drupal installation exists in a schema that is not the default 186 * or you want to access several databases from the same code base at the same 187 * time. 188 * Example: 189 * @code 190 * 'prefix' => array( 191 * 'default' => 'main.', 192 * 'users' => 'shared.', 193 * 'sessions' => 'shared.', 194 * 'role' => 'shared.', 195 * 'authmap' => 'shared.', 196 * ); 197 * @endcode 198 * NOTE: MySQL and SQLite's definition of a schema is a database. 199 * 200 * Advanced users can add or override initial commands to execute when 201 * connecting to the database server, as well as PDO connection settings. For 202 * example, to enable MySQL SELECT queries to exceed the max_join_size system 203 * variable, and to reduce the database connection timeout to 5 seconds: 204 * 205 * @code 206 * $databases['default']['default'] = array( 207 * 'init_commands' => array( 208 * 'big_selects' => 'SET SQL_BIG_SELECTS=1', 209 * ), 210 * 'pdo' => array( 211 * PDO::ATTR_TIMEOUT => 5, 212 * ), 213 * ); 214 * @endcode 215 * 216 * WARNING: These defaults are designed for database portability. Changing them 217 * may cause unexpected behavior, including potential data loss. 218 * 219 * @see DatabaseConnection_mysql::__construct 220 * @see DatabaseConnection_pgsql::__construct 221 * @see DatabaseConnection_sqlite::__construct 222 * 223 * Database configuration format: 224 * @code 225 * $databases['default']['default'] = array( 226 * 'driver' => 'mysql', 227 * 'database' => 'databasename', 228 * 'username' => 'username', 229 * 'password' => 'password', 230 * 'host' => 'localhost', 231 * 'prefix' => '', 232 * ); 233 * $databases['default']['default'] = array( 234 * 'driver' => 'pgsql', 235 * 'database' => 'databasename', 236 * 'username' => 'username', 237 * 'password' => 'password', 238 * 'host' => 'localhost', 239 * 'prefix' => '', 240 * ); 241 * $databases['default']['default'] = array( 242 * 'driver' => 'sqlite', 243 * 'database' => '/path/to/databasefilename', 244 * ); 245 * @endcode 246 */ 247 $databases = array(); 248 249 /** 250 * Access control for update.php script. 251 * 252 * If you are updating your Drupal installation using the update.php script but 253 * are not logged in using either an account with the "Administer software 254 * updates" permission or the site maintenance account (the account that was 255 * created during installation), you will need to modify the access check 256 * statement below. Change the FALSE to a TRUE to disable the access check. 257 * After finishing the upgrade, be sure to open this file again and change the 258 * TRUE back to a FALSE! 259 */ 260 $update_free_access = FALSE; 261 262 /** 263 * Salt for one-time login links and cancel links, form tokens, etc. 264 * 265 * This variable will be set to a random value by the installer. All one-time 266 * login links will be invalidated if the value is changed. Note that if your 267 * site is deployed on a cluster of web servers, you must ensure that this 268 * variable has the same value on each server. If this variable is empty, a hash 269 * of the serialized database credentials will be used as a fallback salt. 270 * 271 * For enhanced security, you may set this variable to a value using the 272 * contents of a file outside your docroot that is never saved together 273 * with any backups of your Drupal files and database. 274 * 275 * Example: 276 * $drupal_hash_salt = file_get_contents('/home/example/salt.txt'); 277 * 278 */ 279 $drupal_hash_salt = ''; 280 281 /** 282 * Base URL (optional). 283 * 284 * If Drupal is generating incorrect URLs on your site, which could 285 * be in HTML headers (links to CSS and JS files) or visible links on pages 286 * (such as in menus), uncomment the Base URL statement below (remove the 287 * leading hash sign) and fill in the absolute URL to your Drupal installation. 288 * 289 * You might also want to force users to use a given domain. 290 * See the .htaccess file for more information. 291 * 292 * Examples: 293 * $base_url = 'http://www.example.com'; 294 * $base_url = 'http://www.example.com:8888'; 295 * $base_url = 'http://www.example.com/drupal'; 296 * $base_url = 'https://www.example.com:8888/drupal'; 297 * 298 * It is not allowed to have a trailing slash; Drupal will add it 299 * for you. 300 */ 301 # $base_url = 'http://www.example.com'; // NO trailing slash! 302 303 /** 304 * PHP settings: 305 * 306 * To see what PHP settings are possible, including whether they can be set at 307 * runtime (by using ini_set()), read the PHP documentation: 308 * http://www.php.net/manual/ini.list.php 309 * See drupal_environment_initialize() in includes/bootstrap.inc for required 310 * runtime settings and the .htaccess file for non-runtime settings. Settings 311 * defined there should not be duplicated here so as to avoid conflict issues. 312 */ 313 314 /** 315 * Some distributions of Linux (most notably Debian) ship their PHP 316 * installations with garbage collection (gc) disabled. Since Drupal depends on 317 * PHP's garbage collection for clearing sessions, ensure that garbage 318 * collection occurs by using the most common settings. 319 */ 320 ini_set('session.gc_probability', 1); 321 ini_set('session.gc_divisor', 100); 322 323 /** 324 * Set session lifetime (in seconds), i.e. the time from the user's last visit 325 * to the active session may be deleted by the session garbage collector. When 326 * a session is deleted, authenticated users are logged out, and the contents 327 * of the user's $_SESSION variable is discarded. 328 */ 329 ini_set('session.gc_maxlifetime', 200000); 330 331 /** 332 * Set session cookie lifetime (in seconds), i.e. the time from the session is 333 * created to the cookie expires, i.e. when the browser is expected to discard 334 * the cookie. The value 0 means "until the browser is closed". 335 */ 336 ini_set('session.cookie_lifetime', 2000000); 337 338 /** 339 * If you encounter a situation where users post a large amount of text, and 340 * the result is stripped out upon viewing but can still be edited, Drupal's 341 * output filter may not have sufficient memory to process it. If you 342 * experience this issue, you may wish to uncomment the following two lines 343 * and increase the limits of these variables. For more information, see 344 * http://php.net/manual/pcre.configuration.php. 345 */ 346 # ini_set('pcre.backtrack_limit', 200000); 347 # ini_set('pcre.recursion_limit', 200000); 348 349 /** 350 * Drupal automatically generates a unique session cookie name for each site 351 * based on its full domain name. If you have multiple domains pointing at the 352 * same Drupal site, you can either redirect them all to a single domain (see 353 * comment in .htaccess), or uncomment the line below and specify their shared 354 * base domain. Doing so assures that users remain logged in as they cross 355 * between your various domains. Make sure to always start the $cookie_domain 356 * with a leading dot, as per RFC 2109. 357 */ 358 # $cookie_domain = '.example.com'; 359 360 /** 361 * Variable overrides: 362 * 363 * To override specific entries in the 'variable' table for this site, 364 * set them here. You usually don't need to use this feature. This is 365 * useful in a configuration file for a vhost or directory, rather than 366 * the default settings.php. Any configuration setting from the 'variable' 367 * table can be given a new value. Note that any values you provide in 368 * these variable overrides will not be modifiable from the Drupal 369 * administration interface. 370 * 371 * The following overrides are examples: 372 * - site_name: Defines the site's name. 373 * - theme_default: Defines the default theme for this site. 374 * - anonymous: Defines the human-readable name of anonymous users. 375 * Remove the leading hash signs to enable. 376 */ 377 # $conf['site_name'] = 'My Drupal site'; 378 # $conf['theme_default'] = 'garland'; 379 # $conf['anonymous'] = 'Visitor'; 380 381 /** 382 * A custom theme can be set for the offline page. This applies when the site 383 * is explicitly set to maintenance mode through the administration page or when 384 * the database is inactive due to an error. It can be set through the 385 * 'maintenance_theme' key. The template file should also be copied into the 386 * theme. It is located inside 'modules/system/maintenance-page.tpl.php'. 387 * Note: This setting does not apply to installation and update pages. 388 */ 389 # $conf['maintenance_theme'] = 'bartik'; 390 391 /** 392 * Reverse Proxy Configuration: 393 * 394 * Reverse proxy servers are often used to enhance the performance 395 * of heavily visited sites and may also provide other site caching, 396 * security, or encryption benefits. In an environment where Drupal 397 * is behind a reverse proxy, the real IP address of the client should 398 * be determined such that the correct client IP address is available 399 * to Drupal's logging, statistics, and access management systems. In 400 * the most simple scenario, the proxy server will add an 401 * X-Forwarded-For header to the request that contains the client IP 402 * address. However, HTTP headers are vulnerable to spoofing, where a 403 * malicious client could bypass restrictions by setting the 404 * X-Forwarded-For header directly. Therefore, Drupal's proxy 405 * configuration requires the IP addresses of all remote proxies to be 406 * specified in $conf['reverse_proxy_addresses'] to work correctly. 407 * 408 * Enable this setting to get Drupal to determine the client IP from 409 * the X-Forwarded-For header (or $conf['reverse_proxy_header'] if set). 410 * If you are unsure about this setting, do not have a reverse proxy, 411 * or Drupal operates in a shared hosting environment, this setting 412 * should remain commented out. 413 * 414 * In order for this setting to be used you must specify every possible 415 * reverse proxy IP address in $conf['reverse_proxy_addresses']. 416 * If a complete list of reverse proxies is not available in your 417 * environment (for example, if you use a CDN) you may set the 418 * $_SERVER['REMOTE_ADDR'] variable directly in settings.php. 419 * Be aware, however, that it is likely that this would allow IP 420 * address spoofing unless more advanced precautions are taken. 421 */ 422 # $conf['reverse_proxy'] = TRUE; 423 424 /** 425 * Specify every reverse proxy IP address in your environment. 426 * This setting is required if $conf['reverse_proxy'] is TRUE. 427 */ 428 # $conf['reverse_proxy_addresses'] = array('a.b.c.d', ...); 429 430 /** 431 * Set this value if your proxy server sends the client IP in a header 432 * other than X-Forwarded-For. 433 */ 434 # $conf['reverse_proxy_header'] = 'HTTP_X_CLUSTER_CLIENT_IP'; 435 436 /** 437 * Page caching: 438 * 439 * By default, Drupal sends a "Vary: Cookie" HTTP header for anonymous page 440 * views. This tells a HTTP proxy that it may return a page from its local 441 * cache without contacting the web server, if the user sends the same Cookie 442 * header as the user who originally requested the cached page. Without "Vary: 443 * Cookie", authenticated users would also be served the anonymous page from 444 * the cache. If the site has mostly anonymous users except a few known 445 * editors/administrators, the Vary header can be omitted. This allows for 446 * better caching in HTTP proxies (including reverse proxies), i.e. even if 447 * clients send different cookies, they still get content served from the cache. 448 * However, authenticated users should access the site directly (i.e. not use an 449 * HTTP proxy, and bypass the reverse proxy if one is used) in order to avoid 450 * getting cached pages from the proxy. 451 */ 452 # $conf['omit_vary_cookie'] = TRUE; 453 454 /** 455 * CSS/JS aggregated file gzip compression: 456 * 457 * By default, when CSS or JS aggregation and clean URLs are enabled Drupal will 458 * store a gzip compressed (.gz) copy of the aggregated files. If this file is 459 * available then rewrite rules in the default .htaccess file will serve these 460 * files to browsers that accept gzip encoded content. This allows pages to load 461 * faster for these users and has minimal impact on server load. If you are 462 * using a webserver other than Apache httpd, or a caching reverse proxy that is 463 * configured to cache and compress these files itself you may want to uncomment 464 * one or both of the below lines, which will prevent gzip files being stored. 465 */ 466 # $conf['css_gzip_compression'] = FALSE; 467 # $conf['js_gzip_compression'] = FALSE; 468 469 /** 470 * Block caching: 471 * 472 * Block caching may not be compatible with node access modules depending on 473 * how the original block cache policy is defined by the module that provides 474 * the block. By default, Drupal therefore disables block caching when one or 475 * more modules implement hook_node_grants(). If you consider block caching to 476 * be safe on your site and want to bypass this restriction, uncomment the line 477 * below. 478 */ 479 # $conf['block_cache_bypass_node_grants'] = TRUE; 480 481 /** 482 * Expiration of cache_form entries: 483 * 484 * Drupal's Form API stores details of forms in cache_form and these entries are 485 * kept for at least 6 hours by default. Expired entries are cleared by cron. 486 * Busy sites can encounter problems with the cache_form table becoming very 487 * large. It's possible to mitigate this by setting a shorter expiration for 488 * cached forms. In some cases it may be desirable to set a longer cache 489 * expiration, for example to prolong cache_form entries for Ajax forms in 490 * cached HTML. 491 * 492 * @see form_set_cache() 493 * @see system_cron() 494 * @see ajax_get_form() 495 */ 496 # $conf['form_cache_expiration'] = 21600; 497 498 /** 499 * String overrides: 500 * 501 * To override specific strings on your site with or without enabling the Locale 502 * module, add an entry to this list. This functionality allows you to change 503 * a small number of your site's default English language interface strings. 504 * 505 * Remove the leading hash signs to enable. 506 */ 507 # $conf['locale_custom_strings_en'][''] = array( 508 # 'forum' => 'Discussion board', 509 # '@count min' => '@count minutes', 510 # ); 511 512 /** 513 * 514 * IP blocking: 515 * 516 * To bypass database queries for denied IP addresses, use this setting. 517 * Drupal queries the {blocked_ips} table by default on every page request 518 * for both authenticated and anonymous users. This allows the system to 519 * block IP addresses from within the administrative interface and before any 520 * modules are loaded. However on high traffic websites you may want to avoid 521 * this query, allowing you to bypass database access altogether for anonymous 522 * users under certain caching configurations. 523 * 524 * If using this setting, you will need to add back any IP addresses which 525 * you may have blocked via the administrative interface. Each element of this 526 * array represents a blocked IP address. Uncommenting the array and leaving it 527 * empty will have the effect of disabling IP blocking on your site. 528 * 529 * Remove the leading hash signs to enable. 530 */ 531 # $conf['blocked_ips'] = array( 532 # 'a.b.c.d', 533 # ); 534 535 /** 536 * Fast 404 pages: 537 * 538 * Drupal can generate fully themed 404 pages. However, some of these responses 539 * are for images or other resource files that are not displayed to the user. 540 * This can waste bandwidth, and also generate server load. 541 * 542 * The options below return a simple, fast 404 page for URLs matching a 543 * specific pattern: 544 * - 404_fast_paths_exclude: A regular expression to match paths to exclude, 545 * such as images generated by image styles, or dynamically-resized images. 546 * The default pattern provided below also excludes the private file system. 547 * If you need to add more paths, you can add '|path' to the expression. 548 * - 404_fast_paths: A regular expression to match paths that should return a 549 * simple 404 page, rather than the fully themed 404 page. If you don't have 550 * any aliases ending in htm or html you can add '|s?html?' to the expression. 551 * - 404_fast_html: The html to return for simple 404 pages. 552 * 553 * Add leading hash signs if you would like to disable this functionality. 554 */ 555 $conf['404_fast_paths_exclude'] = '/\/(?:styles)|(?:system\/files)\//'; 556 $conf['404_fast_paths'] = '/\.(?:txt|png|gif|jpe?g|css|js|ico|swf|flv|cgi|bat|pl|dll|exe|asp)$/i'; 557 $conf['404_fast_html'] = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><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>'; 558 559 /** 560 * By default the page request process will return a fast 404 page for missing 561 * files if they match the regular expression set in '404_fast_paths' and not 562 * '404_fast_paths_exclude' above. 404 errors will simultaneously be logged in 563 * the Drupal system log. 564 * 565 * You can choose to return a fast 404 page earlier for missing pages (as soon 566 * as settings.php is loaded) by uncommenting the line below. This speeds up 567 * server response time when loading 404 error pages and prevents the 404 error 568 * from being logged in the Drupal system log. In order to prevent valid pages 569 * such as image styles and other generated content that may match the 570 * '404_fast_paths' regular expression from returning 404 errors, it is 571 * necessary to add them to the '404_fast_paths_exclude' regular expression 572 * above. Make sure that you understand the effects of this feature before 573 * uncommenting the line below. 574 */ 575 # drupal_fast_404(); 576 577 /** 578 * External access proxy settings: 579 * 580 * If your site must access the Internet via a web proxy then you can enter 581 * the proxy settings here. Currently only basic authentication is supported 582 * by using the username and password variables. The proxy_user_agent variable 583 * can be set to NULL for proxies that require no User-Agent header or to a 584 * non-empty string for proxies that limit requests to a specific agent. The 585 * proxy_exceptions variable is an array of host names to be accessed directly, 586 * not via proxy. 587 */ 588 # $conf['proxy_server'] = ''; 589 # $conf['proxy_port'] = 8080; 590 # $conf['proxy_username'] = ''; 591 # $conf['proxy_password'] = ''; 592 # $conf['proxy_user_agent'] = ''; 593 # $conf['proxy_exceptions'] = array('127.0.0.1', 'localhost'); 594 595 /** 596 * Authorized file system operations: 597 * 598 * The Update manager module included with Drupal provides a mechanism for 599 * site administrators to securely install missing updates for the site 600 * directly through the web user interface. On securely-configured servers, 601 * the Update manager will require the administrator to provide SSH or FTP 602 * credentials before allowing the installation to proceed; this allows the 603 * site to update the new files as the user who owns all the Drupal files, 604 * instead of as the user the webserver is running as. On servers where the 605 * webserver user is itself the owner of the Drupal files, the administrator 606 * will not be prompted for SSH or FTP credentials (note that these server 607 * setups are common on shared hosting, but are inherently insecure). 608 * 609 * Some sites might wish to disable the above functionality, and only update 610 * the code directly via SSH or FTP themselves. This setting completely 611 * disables all functionality related to these authorized file operations. 612 * 613 * @see http://drupal.org/node/244924 614 * 615 * Remove the leading hash signs to disable. 616 */ 617 # $conf['allow_authorize_operations'] = FALSE; 618 619 /** 620 * Theme debugging: 621 * 622 * When debugging is enabled: 623 * - The markup of each template is surrounded by HTML comments that contain 624 * theming information, such as template file name suggestions. 625 * - Note that this debugging markup will cause automated tests that directly 626 * check rendered HTML to fail. 627 * 628 * For more information about debugging theme templates, see 629 * https://www.drupal.org/node/223440#theme-debug. 630 * 631 * Not recommended in production environments. 632 * 633 * Remove the leading hash sign to enable. 634 */ 635 # $conf['theme_debug'] = TRUE; 636 637 /** 638 * CSS identifier double underscores allowance: 639 * 640 * To allow CSS identifiers to contain double underscores (.example__selector) 641 * for Drupal's BEM-style naming standards, uncomment the line below. 642 * Note that if you change this value in existing sites, existing page styles 643 * may be broken. 644 * 645 * @see drupal_clean_css_identifier() 646 */ 647 # $conf['allow_css_double_underscores'] = TRUE; 648 649 /** 650 * The default list of directories that will be ignored by Drupal's file API. 651 * 652 * By default ignore node_modules and bower_components folders to avoid issues 653 * with common frontend tools and recursive scanning of directories looking for 654 * extensions. 655 * 656 * @see file_scan_directory() 657 */ 658 $conf['file_scan_ignore_directories'] = array( 659 'node_modules', 660 'bower_components', 661 ); 662 663 // Automatically generated include for settings managed by ddev. 664 if (file_exists(__DIR__ . '/settings.ddev.php') && getenv('IS_DDEV_PROJECT') == 'true') { 665 include __DIR__ . '/settings.ddev.php'; 666 }