'use strict' /** @type {import('@adonisjs/framework/src/Env')} */ const Env = use('Env') module.exports = { /* |-------------------------------------------------------------------------- | Application Name |-------------------------------------------------------------------------- | | This value is the name of your application and can be used when you | need to place the application's name in a email, view or | other location. | */ name: Env.get('APP_NAME', 'AdonisJs'), /* |-------------------------------------------------------------------------- | App Key |-------------------------------------------------------------------------- | | App key is a randomly generated 16 or 32 characters long string required | to encrypted cookies, sessions and other sensitive data. | */ appKey: Env.getOrFail('APP_KEY'), http: { /* |-------------------------------------------------------------------------- | Allow Method Spoofing |-------------------------------------------------------------------------- | | Method spoofing allows you to make requests by spoofing the http verb. | Which means you can make a GET request but instruct the server to | treat as a POST or PUT request. If you want this feature, set the | below value to true. | */ allowMethodSpoofing: true, /* |-------------------------------------------------------------------------- | Trust Proxy |-------------------------------------------------------------------------- | | Trust proxy defines whether X-Forwarded-* headers should be trusted or not. | When your application is behind a proxy server like nginx, these values | are set automatically and should be trusted. Apart from setting it | to true or false Adonis supports a handful of ways to allow proxy | values. Read documentation for that. | */ trustProxy: false, /* |-------------------------------------------------------------------------- | Subdomains |-------------------------------------------------------------------------- | | Offset to be used for returning subdomains for a given request. For | majority of applications it will be 2, until you have nested | sudomains. | cheatsheet.adonisjs.com - offset - 2 | virk.cheatsheet.adonisjs.com - offset - 3 | */ subdomainOffset: 2, /* |-------------------------------------------------------------------------- | JSONP Callback |-------------------------------------------------------------------------- | | Default jsonp callback to be used when callback query string is missing | in request url. | */ jsonpCallback: 'callback', /* |-------------------------------------------------------------------------- | Etag |-------------------------------------------------------------------------- | | Set etag on all HTTP responses. In order to disable for selected routes, | you can call the `response.send` with an options object as follows. | | response.send('Hello', { ignoreEtag: true }) | */ etag: false }, views: { /* |-------------------------------------------------------------------------- | Cache Views |-------------------------------------------------------------------------- | | Define whether or not to cache the compiled view. Set it to true in | production to optimize view loading time. | */ cache: Env.get('CACHE_VIEWS', true) }, static: { /* |-------------------------------------------------------------------------- | Dot Files |-------------------------------------------------------------------------- | | Define how to treat dot files when trying to serve static resources. | By default it is set to ignore, which will pretend that dotfiles | do not exist. | | Can be one of the following | ignore, deny, allow | */ dotfiles: 'ignore', /* |-------------------------------------------------------------------------- | ETag |-------------------------------------------------------------------------- | | Enable or disable etag generation | */ etag: true, /* |-------------------------------------------------------------------------- | Extensions |-------------------------------------------------------------------------- | | Set file extension fallbacks. When set, if a file is not found, the given | extensions will be added to the file name and search for. The first | that exists will be served. Example: ['html', 'htm']. | */ extensions: false }, locales: { /* |-------------------------------------------------------------------------- | Loader |-------------------------------------------------------------------------- | | The loader to be used for fetching and updating locales. Below is the | list of available options. | | file, database | */ loader: 'file', /* |-------------------------------------------------------------------------- | Default Locale |-------------------------------------------------------------------------- | | Default locale to be used by Antl provider. You can always switch drivers | in runtime or use the official Antl middleware to detect the driver | based on HTTP headers/query string. | */ locale: 'en' }, logger: { /* |-------------------------------------------------------------------------- | Transport |-------------------------------------------------------------------------- | | Transport to be used for logging messages. You can have multiple | transports using same driver. | | Available drivers are: `file` and `console`. | */ transport: 'console', /* |-------------------------------------------------------------------------- | Console Transport |-------------------------------------------------------------------------- | | Using `console` driver for logging. This driver writes to `stdout` | and `stderr` | */ console: { driver: 'console', name: 'adonis-app', level: 'info' }, /* |-------------------------------------------------------------------------- | File Transport |-------------------------------------------------------------------------- | | File transport uses file driver and writes log messages for a given | file inside `tmp` directory for your app. | | For a different directory, set an absolute path for the filename. | */ file: { driver: 'file', name: 'adonis-app', filename: 'adonis.log', level: 'info' } }, /* |-------------------------------------------------------------------------- | Generic Cookie Options |-------------------------------------------------------------------------- | | The following cookie options are generic settings used by AdonisJs to create | cookies. However, some parts of the application like `sessions` can have | seperate settings for cookies inside `config/session.js`. | */ cookie: { httpOnly: true, sameSite: false, path: '/', maxAge: 7200 } }