232 lines
18 KiB
YAML
232 lines
18 KiB
YAML
absolute_urls: false # Absolute or relative URLs for `base_url`
|
|
timezone: '' # Valid values: http://php.net/manual/en/timezones.php
|
|
default_locale: # Default locale (defaults to system)
|
|
param_sep: ':' # Parameter separator, use ';' for Apache on windows
|
|
wrapped_site: false # For themes/plugins to know if Grav is wrapped by another platform
|
|
reverse_proxy_setup: false # Running in a reverse proxy scenario with different webserver ports than proxy
|
|
force_ssl: false # If enabled, Grav forces to be accessed via HTTPS (NOTE: Not an ideal solution)
|
|
force_lowercase_urls: true # If you want to support mixed cased URLs set this to false
|
|
custom_base_url: '' # Set the base_url manually, e.g. http://yoursite.com/yourpath
|
|
username_regex: '^[a-z0-9_-]{3,16}$' # Only lowercase chars, digits, dashes, underscores. 3 - 16 chars
|
|
pwd_regex: '(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}' # At least one number, one uppercase and lowercase letter, and be at least 8+ chars
|
|
intl_enabled: true # Special logic for PHP International Extension (mod_intl)
|
|
http_x_forwarded: # Configuration options for the various HTTP_X_FORWARD headers
|
|
protocol: true
|
|
host: false
|
|
port: true
|
|
ip: true
|
|
|
|
languages:
|
|
supported: [] # List of languages supported. eg: [en, fr, de]
|
|
default_lang: # Default is the first supported language. Must be one of the supported languages
|
|
include_default_lang: true # Include the default lang prefix in all URLs
|
|
include_default_lang_file_extension: true # If true, include language code for the default language in file extension: default.en.md
|
|
translations: true # If false, translation keys are used instead of translated strings
|
|
translations_fallback: true # Fallback through supported translations if active lang doesn't exist
|
|
session_store_active: false # Store active language in session
|
|
http_accept_language: false # Attempt to set the language based on http_accept_language header in the browser
|
|
override_locale: false # Override the default or system locale with language specific one
|
|
content_fallback: {} # Custom language fallbacks. eg: {fr: ['fr', 'en']}
|
|
pages_fallback_only: false # DEPRECATED: Use `content_fallback` instead
|
|
debug: false # Debug language detection
|
|
|
|
home:
|
|
alias: '/home' # Default path for home, ie /
|
|
hide_in_urls: false # Hide the home route in URLs
|
|
|
|
pages:
|
|
type: regular # EXPERIMENTAL: Page type: regular or flex
|
|
dirs: ['page://'] # Advanced functionality, allows for multiple page paths
|
|
theme: quark # Default theme (defaults to "quark" theme)
|
|
order:
|
|
by: default # Order pages by "default", "alpha" or "date"
|
|
dir: asc # Default ordering direction, "asc" or "desc"
|
|
list:
|
|
count: 20 # Default item count per page
|
|
dateformat:
|
|
default: # The default date format Grav expects in the `date: ` field
|
|
short: 'jS M Y' # Short date format
|
|
long: 'F jS \a\t g:ia' # Long date format
|
|
publish_dates: true # automatically publish/unpublish based on dates
|
|
process:
|
|
markdown: true # Process Markdown
|
|
twig: false # Process Twig
|
|
twig_first: false # Process Twig before markdown when processing both on a page
|
|
never_cache_twig: false # Only cache content, never cache twig processed in content (incompatible with `twig_first: true`)
|
|
events:
|
|
page: true # Enable page level events
|
|
twig: true # Enable Twig level events
|
|
markdown:
|
|
extra: false # Enable support for Markdown Extra support (GFM by default)
|
|
auto_line_breaks: false # Enable automatic line breaks
|
|
auto_url_links: false # Enable automatic HTML links
|
|
escape_markup: false # Escape markup tags into entities
|
|
special_chars: # List of special characters to automatically convert to entities
|
|
'>': 'gt'
|
|
'<': 'lt'
|
|
valid_link_attributes: # Valid attributes to pass through via markdown links
|
|
- rel
|
|
- target
|
|
- id
|
|
- class
|
|
- classes
|
|
types: [html,htm,xml,txt,json,rss,atom] # list of valid page types
|
|
append_url_extension: '' # Append page's extension in Page urls (e.g. '.html' results in /path/page.html)
|
|
expires: 604800 # Page expires time in seconds (604800 seconds = 7 days)
|
|
cache_control: # Can be blank for no setting, or a valid `cache-control` text value
|
|
last_modified: false # Set the last modified date header based on file modification timestamp
|
|
etag: true # Set the etag header tag
|
|
vary_accept_encoding: false # Add `Vary: Accept-Encoding` header
|
|
redirect_default_code: 302 # Default code to use for redirects: 301|302|303
|
|
redirect_trailing_slash: 1 # Always redirect trailing slash with redirect code 0|1|301|302 (0: no redirect, 1: use default code)
|
|
redirect_default_route: 0 # Always redirect to page's default route using code 0|1|301|302, also removes .htm and .html extensions
|
|
ignore_files: [.DS_Store] # Files to ignore in Pages
|
|
ignore_folders: [.git, .idea] # Folders to ignore in Pages
|
|
ignore_hidden: true # Ignore all Hidden files and folders
|
|
hide_empty_folders: false # If folder has no .md file, should it be hidden
|
|
url_taxonomy_filters: true # Enable auto-magic URL-based taxonomy filters for page collections
|
|
frontmatter:
|
|
process_twig: false # Should the frontmatter be processed to replace Twig variables?
|
|
ignore_fields: ['form','forms'] # Fields that might contain Twig variables and should not be processed
|
|
|
|
cache:
|
|
enabled: true # Set to true to enable caching
|
|
check:
|
|
method: file # Method to check for updates in pages: file|folder|hash|none
|
|
driver: auto # One of: auto|file|apcu|memcache|wincache
|
|
prefix: 'g' # Cache prefix string (prevents cache conflicts)
|
|
purge_at: '0 4 * * *' # How often to purge old file cache (using new scheduler)
|
|
clear_at: '0 3 * * *' # How often to clear cache (using new scheduler)
|
|
clear_job_type: 'standard' # Type to clear when processing the scheduled clear job `standard`|`all`
|
|
clear_images_by_default: false # By default grav does not include processed images in cache clear, this can be enabled
|
|
cli_compatibility: false # Ensures only non-volatile drivers are used (file, redis, memcache, etc.)
|
|
lifetime: 604800 # Lifetime of cached data in seconds (0 = infinite)
|
|
gzip: false # GZip compress the page output
|
|
allow_webserver_gzip: false # If true, `content-encoding: identity` but connection isn't closed before `onShutDown()` event
|
|
redis:
|
|
socket: false # Path to redis unix socket (e.g. /var/run/redis/redis.sock), false = use server and port to connect
|
|
password: # Optional password
|
|
database: # Optional database ID
|
|
|
|
twig:
|
|
cache: true # Set to true to enable Twig caching
|
|
debug: true # Enable Twig debug
|
|
auto_reload: true # Refresh cache on changes
|
|
autoescape: true # Autoescape Twig vars (DEPRECATED, always enabled in strict mode)
|
|
undefined_functions: true # Allow undefined functions
|
|
undefined_filters: true # Allow undefined filters
|
|
safe_functions: [] # List of PHP functions which are allowed to be used as Twig functions
|
|
safe_filters: [] # List of PHP functions which are allowed to be used as Twig filters
|
|
umask_fix: false # By default Twig creates cached files as 755, fix switches this to 775
|
|
|
|
assets: # Configuration for Assets Manager (JS, CSS)
|
|
css_pipeline: false # The CSS pipeline is the unification of multiple CSS resources into one file
|
|
css_pipeline_include_externals: true # Include external URLs in the pipeline by default
|
|
css_pipeline_before_excludes: true # Render the pipeline before any excluded files
|
|
css_minify: true # Minify the CSS during pipelining
|
|
css_minify_windows: false # Minify Override for Windows platforms. False by default due to ThreadStackSize
|
|
css_rewrite: true # Rewrite any CSS relative URLs during pipelining
|
|
js_pipeline: false # The JS pipeline is the unification of multiple JS resources into one file
|
|
js_pipeline_include_externals: true # Include external URLs in the pipeline by default
|
|
js_pipeline_before_excludes: true # Render the pipeline before any excluded files
|
|
js_module_pipeline: false # The JS Module pipeline is the unification of multiple JS Module resources into one file
|
|
js_module_pipeline_include_externals: true # Include external URLs in the pipeline by default
|
|
js_module_pipeline_before_excludes: true # Render the pipeline before any excluded files
|
|
js_minify: true # Minify the JS during pipelining
|
|
enable_asset_timestamp: false # Enable asset timestamps
|
|
enable_asset_sri: false # Enable asset SRI
|
|
collections:
|
|
jquery: system://assets/jquery/jquery-3.x.min.js
|
|
|
|
errors:
|
|
display: 0 # Display either (1) Full backtrace | (0) Simple Error | (-1) System Error
|
|
log: true # Log errors to /logs folder
|
|
|
|
log:
|
|
handler: file # Log handler. Currently supported: file | syslog
|
|
syslog:
|
|
facility: local6 # Syslog facilities output
|
|
tag: grav # Syslog tag. Default: "grav".
|
|
|
|
debugger:
|
|
enabled: false # Enable Grav debugger and following settings
|
|
provider: clockwork # Debugger provider: debugbar | clockwork
|
|
censored: false # Censor potentially sensitive information (POST parameters, cookies, files, configuration and most array/object data in log messages)
|
|
shutdown:
|
|
close_connection: true # Close the connection before calling onShutdown(). false for debugging
|
|
|
|
images:
|
|
default_image_quality: 85 # Default image quality to use when resampling images (85%)
|
|
cache_all: false # Cache all image by default
|
|
cache_perms: '0755' # MUST BE IN QUOTES!! Default cache folder perms. Usually '0755' or '0775'
|
|
debug: false # Show an overlay over images indicating the pixel depth of the image when working with retina for example
|
|
auto_fix_orientation: true # Automatically fix the image orientation based on the Exif data
|
|
seofriendly: false # SEO-friendly processed image names
|
|
cls: # Cumulative Layout Shift: See https://web.dev/optimize-cls/
|
|
auto_sizes: false # Automatically add height/width to image
|
|
aspect_ratio: false # Reserve space with aspect ratio style
|
|
retina_scale: 1 # scale to adjust auto-sizes for better handling of HiDPI resolutions
|
|
defaults:
|
|
loading: auto # Let browser pick [auto|lazy|eager]
|
|
watermark:
|
|
image: 'system://images/watermark.png' # Path to a watermark image
|
|
position_y: 'center' # top|center|bottom
|
|
position_x: 'center' # left|center|right
|
|
scale: 33 # percentage of watermark scale
|
|
watermark_all: false # automatically watermark all images
|
|
|
|
media:
|
|
enable_media_timestamp: false # Enable media timestamps
|
|
unsupported_inline_types: [] # Array of supported media types to try to display inline
|
|
allowed_fallback_types: [] # Array of allowed media types of files found if accessed via Page route
|
|
auto_metadata_exif: false # Automatically create metadata files from Exif data where possible
|
|
|
|
session:
|
|
enabled: true # Enable Session support
|
|
initialize: true # Initialize session from Grav (if false, plugin needs to start the session)
|
|
timeout: 1800 # Timeout in seconds
|
|
name: grav-site # Name prefix of the session cookie. Use alphanumeric, dashes or underscores only. Do not use dots in the session name
|
|
uniqueness: path # Should sessions be `path` based or `security.salt` based
|
|
secure: false # Set session secure. If true, indicates that communication for this cookie must be over an encrypted transmission. Enable this only on sites that run exclusively on HTTPS
|
|
secure_https: true # Set session secure on HTTPS but not on HTTP. Has no effect if you have `session.secure: true`. Set to false if your site jumps between HTTP and HTTPS.
|
|
httponly: true # Set session HTTP only. If true, indicates that cookies should be used only over HTTP, and JavaScript modification is not allowed.
|
|
samesite: Lax # Set session SameSite. Possible values are Lax, Strict and None. See https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie/SameSite
|
|
split: true # Sessions should be independent between site and plugins (such as admin)
|
|
domain: # Domain used by sessions.
|
|
path: # Path used by sessions.
|
|
|
|
gpm:
|
|
releases: stable # Set to either 'stable' or 'testing'
|
|
official_gpm_only: true # By default GPM direct-install will only allow URLs via the official GPM proxy to ensure security
|
|
|
|
http:
|
|
method: auto # Either 'curl', 'fopen' or 'auto'. 'auto' will try fopen first and if not available cURL
|
|
enable_proxy: true # Enable proxy server configuration
|
|
proxy_url: # Configure a manual proxy URL for GPM (eg 127.0.0.1:3128)
|
|
proxy_cert_path: # Local path to proxy certificate folder containing pem files
|
|
concurrent_connections: 5 # Concurrent HTTP connections when multiplexing
|
|
verify_peer: true # Enable/Disable SSL verification of peer certificates
|
|
verify_host: true # Enable/Disable SSL verification of host certificates
|
|
|
|
accounts:
|
|
type: regular # EXPERIMENTAL: Account type: regular or flex
|
|
storage: file # EXPERIMENTAL: Flex storage type: file or folder
|
|
avatar: gravatar # Avatar generator [multiavatar|gravatar]
|
|
|
|
flex:
|
|
cache:
|
|
index:
|
|
enabled: true # Set to true to enable Flex index caching. Is used to cache timestamps in files
|
|
lifetime: 60 # Lifetime of cached index in seconds (0 = infinite)
|
|
object:
|
|
enabled: true # Set to true to enable Flex object caching. Is used to cache object data
|
|
lifetime: 600 # Lifetime of cached objects in seconds (0 = infinite)
|
|
render:
|
|
enabled: true # Set to true to enable Flex render caching. Is used to cache rendered output
|
|
lifetime: 600 # Lifetime of cached HTML in seconds (0 = infinite)
|
|
|
|
strict_mode:
|
|
yaml_compat: false # Set to true to enable YAML backwards compatibility
|
|
twig_compat: false # Set to true to enable deprecated Twig settings (autoescape: false)
|
|
blueprint_compat: false # Set to true to enable backward compatible strict support for blueprints
|