7 * false: No error messages, errors, or warnings shown.
10 * true: Errors and warnings shown.
12 'debug' => filter_var(env('DEBUG', true), FILTER_VALIDATE_BOOLEAN),
15 * Configure basic information about the application.
17 * - namespace - The namespace to find app classes under.
18 * - defaultLocale - The default locale for translation, formatting currencies and numbers, date and time.
19 * - encoding - The encoding used for HTML + database connections.
20 * - base - The base directory the app resides in. If false this
21 * will be auto detected.
22 * - dir - Name of app directory.
23 * - webroot - The webroot directory.
24 * - wwwRoot - The file path to webroot.
25 * - baseUrl - To configure CakePHP to *not* use mod_rewrite and to
26 * use CakePHP pretty URLs, remove these .htaccess
30 * And uncomment the baseUrl key below.
31 * - fullBaseUrl - A base URL to use for absolute links.
32 * - imageBaseUrl - Web path to the public images directory under webroot.
33 * - cssBaseUrl - Web path to the public css directory under webroot.
34 * - jsBaseUrl - Web path to the public js directory under webroot.
35 * - paths - Configure paths for non class based resources. Supports the
36 * `plugins`, `templates`, `locales` subkeys, which allow the definition of
37 * paths for plugins, view templates and locale files respectively.
41 'encoding' => env('APP_ENCODING', 'UTF-8'),
42 'defaultLocale' => env('APP_DEFAULT_LOCALE', 'en_US'),
45 'webroot' => 'webroot',
46 'wwwRoot' => WWW_ROOT,
47 // 'baseUrl' => env('SCRIPT_NAME'),
48 'fullBaseUrl' => false,
49 'imageBaseUrl' => 'img/',
50 'cssBaseUrl' => 'css/',
53 'plugins' => [ROOT . DS . 'plugins' . DS],
54 'templates' => [APP . 'Template' . DS],
55 'locales' => [APP . 'Locale' . DS],
60 * Security and encryption configuration
62 * - salt - A random string used in security hashing methods.
63 * The salt value is also used as the encryption key.
64 * You should treat it as extremely sensitive data.
67 'salt' => env('SECURITY_SALT', '__SALT__'),
71 * Apply timestamps with the last modified time to static assets (js, css, images).
72 * Will append a querystring parameter containing the time the file was modified.
73 * This is useful for busting browser caches.
75 * Set to true to apply timestamps when debug is true. Set to 'force' to always
76 * enable timestamping regardless of debug value.
79 // 'timestamp' => true,
83 * Configure the cache adapters.
87 'className' => 'File',
89 'url' => env('CACHE_DEFAULT_URL', null),
93 * Configure the cache used for general framework caching.
94 * Translation cache files are stored with this configuration.
95 * Duration will be set to '+2 minutes' in bootstrap.php when debug = true
96 * If you set 'className' => 'Null' core cache will be disabled.
99 'className' => 'File',
100 'prefix' => 'myapp_cake_core_',
101 'path' => CACHE . 'persistent/',
103 'duration' => '+1 years',
104 'url' => env('CACHE_CAKECORE_URL', null),
108 * Configure the cache for model and datasource caches. This cache
109 * configuration is used to store schema descriptions, and table listings
111 * Duration will be set to '+2 minutes' in bootstrap.php when debug = true
114 'className' => 'File',
115 'prefix' => 'myapp_cake_model_',
116 'path' => CACHE . 'models/',
118 'duration' => '+1 years',
119 'url' => env('CACHE_CAKEMODEL_URL', null),
124 * Configure the Error and Exception handlers used by your application.
126 * By default errors are displayed using Debugger, when debug is true and logged
127 * by Cake\Log\Log when debug is false.
129 * In CLI environments exceptions will be printed to stderr with a backtrace.
130 * In web environments an HTML page will be displayed for the exception.
131 * With debug true, framework errors like Missing Controller will be displayed.
132 * When debug is false, framework errors will be coerced into generic HTTP errors.
136 * - `errorLevel` - int - The level of errors you are interested in capturing.
137 * - `trace` - boolean - Whether or not backtraces should be included in
138 * logged errors/exceptions.
139 * - `log` - boolean - Whether or not you want exceptions logged.
140 * - `exceptionRenderer` - string - The class responsible for rendering
141 * uncaught exceptions. If you choose a custom class you should place
142 * the file for that class in src/Error. This class needs to implement a
144 * - `skipLog` - array - List of exceptions to skip for logging. Exceptions that
145 * extend one of the listed exceptions will also be skipped for logging.
147 * `'skipLog' => ['Cake\Network\Exception\NotFoundException', 'Cake\Network\Exception\UnauthorizedException']`
148 * - `extraFatalErrorMemory` - int - The number of megabytes to increase
149 * the memory limit by when a fatal error is encountered. This allows
150 * breathing room to complete logging or error handling.
153 'errorLevel' => E_ALL,
154 'exceptionRenderer' => 'Cake\Error\ExceptionRenderer',
161 * Email configuration.
163 * By defining transports separately from delivery profiles you can easily
164 * re-use transport configuration across multiple profiles.
166 * You can specify multiple configurations for production, development and
169 * Each transport needs a `className`. Valid options are as follows:
171 * Mail - Send using PHP mail function
172 * Smtp - Send using SMTP
173 * Debug - Do not send the email, just return the result
175 * You can add custom transports (or override existing transports) by adding the
176 * appropriate file to src/Mailer/Transport. Transports should be named
177 * 'YourTransport.php', where 'Your' is the name of the transport.
179 'EmailTransport' => [
181 'className' => 'Mail',
182 // The following keys are used in SMTP transports
183 'host' => 'localhost',
186 'username' => 'user',
187 'password' => 'secret',
190 'url' => env('EMAIL_TRANSPORT_DEFAULT_URL', null),
195 * Email delivery profiles
197 * Delivery profiles allow you to predefine various properties about email
198 * messages from your application and give the settings a name. This saves
199 * duplication across your application and makes maintenance and development
200 * easier. Each profile accepts a number of keys. See `Cake\Mailer\Email`
201 * for more information.
205 'transport' => 'default',
206 'from' => 'you@localhost',
207 //'charset' => 'utf-8',
208 //'headerCharset' => 'utf-8',
213 * Connection information used by the ORM to connect
214 * to your application's datastores.
215 * Do not use periods in database name - it may lead to error.
216 * See https://github.com/cakephp/cakephp/issues/6471 for details.
217 * Drivers include Mysql Postgres Sqlite Sqlserver
218 * See vendor\cakephp\cakephp\src\Database\Driver for complete list
222 'className' => 'Cake\Database\Connection',
223 'driver' => 'Cake\Database\Driver\Mysql',
224 'persistent' => false,
225 'host' => 'localhost',
227 * CakePHP will use the default DB port based on the driver selected
228 * MySQL on MAMP uses port 8889, MAMP users will want to uncomment
229 * the following line and set the port accordingly
231 //'port' => 'non_standard_port_number',
232 'username' => 'my_app',
233 'password' => 'secret',
234 'database' => 'my_app',
235 'encoding' => 'utf8',
238 'cacheMetadata' => true,
242 * Set identifier quoting to true if you are using reserved words or
243 * special characters in your table or column names. Enabling this
244 * setting will result in queries built using the Query Builder having
245 * identifiers quoted when creating SQL. It should be noted that this
246 * decreases performance because each query needs to be traversed and
247 * manipulated before being executed.
249 'quoteIdentifiers' => false,
252 * During development, if using MySQL < 5.6, uncommenting the
253 * following line could boost the speed at which schema metadata is
254 * fetched from the database. It can also be set directly with the
255 * mysql configuration directive 'innodb_stats_on_metadata = 0'
256 * which is the recommended value in production environments
258 //'init' => ['SET GLOBAL innodb_stats_on_metadata = 0'],
260 'url' => env('DATABASE_URL', null),
264 * The test connection is used during the test suite.
267 'className' => 'Cake\Database\Connection',
268 'driver' => 'Cake\Database\Driver\Mysql',
269 'persistent' => false,
270 'host' => 'localhost',
271 //'port' => 'non_standard_port_number',
272 'username' => 'my_app',
273 'password' => 'secret',
274 'database' => 'test_myapp',
275 'encoding' => 'utf8',
277 'cacheMetadata' => true,
278 'quoteIdentifiers' => false,
280 //'init' => ['SET GLOBAL innodb_stats_on_metadata = 0'],
281 'url' => env('DATABASE_TEST_URL', null),
286 * Configures logging options
290 'className' => 'Cake\Log\Engine\FileLog',
293 'levels' => ['notice', 'info', 'debug'],
294 'url' => env('LOG_DEBUG_URL', null),
297 'className' => 'Cake\Log\Engine\FileLog',
300 'levels' => ['warning', 'error', 'critical', 'alert', 'emergency'],
301 'url' => env('LOG_ERROR_URL', null),
306 * Session configuration.
308 * Contains an array of settings to use for session configuration. The
309 * `defaults` key is used to define a default preset to use for sessions, any
310 * settings declared here will override the settings of the default config.
314 * - `cookie` - The name of the cookie to use. Defaults to 'CAKEPHP'.
315 * - `cookiePath` - The url path for which session cookie is set. Maps to the
316 * `session.cookie_path` php.ini config. Defaults to base path of app.
317 * - `timeout` - The time in minutes the session should be valid for.
318 * Pass 0 to disable checking timeout.
319 * Please note that php.ini's session.gc_maxlifetime must be equal to or greater
320 * than the largest Session['timeout'] in all served websites for it to have the
322 * - `defaults` - The default configuration set to use as a basis for your session.
323 * There are four built-in options: php, cake, cache, database.
324 * - `handler` - Can be used to enable a custom session handler. Expects an
325 * array with at least the `engine` key, being the name of the Session engine
326 * class to use for managing the session. CakePHP bundles the `CacheSession`
327 * and `DatabaseSession` engines.
328 * - `ini` - An associative array of additional ini values to set.
330 * The built-in `defaults` options are:
332 * - 'php' - Uses settings defined in your php.ini.
333 * - 'cake' - Saves session files in CakePHP's /tmp directory.
334 * - 'database' - Uses CakePHP's database sessions.
335 * - 'cache' - Use the Cache class to save sessions.
337 * To define a custom session handler, save it at src/Network/Session/<name>.php.
338 * Make sure the class implements PHP's `SessionHandlerInterface` and set
339 * Session.handler to <name>
341 * To use database sessions, load the SQL file located at config/Schema/sessions.sql