[BUGFIX] Always exclude E_USER_DEPRECATED from exceptionalErrors
[Packages/TYPO3.CMS.git] / typo3 / sysext / core / Configuration / DefaultConfigurationDescription.yaml
1 GFX:
2 type: container
3 items:
4 thumbnails:
5 type: bool
6 description: 'Enables the use of thumbnails in the backend interface.'
7 thumbnails_png:
8 type: bool
9 description: 'If disabled, thumbnails from non-image files will be converted to ''gif'', otherwise ''png'' (default).'
10 gif_compress:
11 type: bool
12 description: 'Enables the use of the <code>\TYPO3\CMS\Core\Imaging\GraphicalFunctions::gifCompress()</code> workaround function for compressing .gif files made with GD or IM, which probably use only RLE or no compression at all.'
13 imagefile_ext:
14 type: list
15 description: 'Commalist of file extensions perceived as images by TYPO3. List should be set to ''gif,png,jpeg,jpg'' if IM is not available. Lowercase and no spaces between!'
16 gdlib:
17 type: bool
18 description: 'Enables the use of GD.'
19 gdlib_png:
20 type: bool
21 description: 'Enables the use of GD, with PNG only. This means that all items normally generated as gif-files will be png-files instead!'
22 processor_enabled:
23 type: bool
24 description: 'Enables the use of Image- or GraphicsMagick.'
25 processor_path:
26 type: text
27 description: 'Path to the IM tools ''convert'', ''combine'', ''identify''.'
28 processor_path_lzw:
29 type: text
30 description: 'Path to the IM tool ''convert'' with LZW enabled! See ''gif_compress''. If your version 4.2.9 of ImageMagick is compiled with LZW you may leave this field blank AND disable the flag ''gif_compress''! Tip: You can call LZW ''convert'' with a prefix like ''myver_convert'' by setting this path with it, eg. <code>/usr/bin/myver_</code> instead of just <code>/usr/bin/</code>.'
31 processor:
32 type: dropdown
33 allowedValues:
34 'ImageMagick': 'Choose ImageMagick for processing images'
35 'GraphicsMagick': 'Choose GraphicsMagick for processing images'
36 description: 'Select which external software on the server should process images - see also the Preset functionality to see what is available.'
37 processor_effects:
38 type: bool
39 description: 'If enabled, apply blur and sharpening in ImageMagick/GraphicMagick functions'
40 processor_allowUpscaling:
41 type: bool
42 description: 'If set, images can be scaled up if told so (in <code>\TYPO3\CMS\Core\Imaging\GraphicalFunctions</code>)'
43 processor_allowFrameSelection:
44 type: bool
45 description: 'If set, the [x] frame selector is appended to input filenames in stdgraphic. This speeds up image processing for PDF files considerably. Disable if your image processor or environment can''t cope with the frame selection.'
46 processor_allowTemporaryMasksAsPng:
47 type: bool
48 description: 'This should be set if your processor supports using PNGs as masks as this is usually faster.'
49 processor_stripColorProfileByDefault:
50 type: bool
51 description: 'If set, the processor_stripColorProfileCommand is used with all processor image operations by default. See tsRef for setting this parameter explicitly for IMAGE generation.'
52 processor_stripColorProfileCommand:
53 type: text
54 description: 'String: Specify the command to strip the profile information, which can reduce thumbnail size up to 60KB. Command can differ in IM/GM, IM also know the -strip command. See <a href="http://www.imagemagick.org/Usage/thumbnails/#profiles" target="_blank">imagemagick.org</a> for details'
55 processor_colorspace:
56 type: text
57 description: 'String: Specify the colorspace to use. Some ImageMagick versions (like 6.7.0 and above) use the sRGB colorspace, so all images are darker then the original. <br />Possible Values: CMY, CMYK, Gray, HCL, HSB, HSL, HWB, Lab, LCH, LMS, Log, Luv, OHTA, Rec601Luma, Rec601YCbCr, Rec709Luma, Rec709YCbCr, RGB, sRGB, Transparent, XYZ, YCbCr, YCC, YIQ, YCbCr, YUV'
58 processor_interlace:
59 type: text
60 description: 'String: Specify the interlace option to use. The result differs in different GM / IM versions. See manual of GraphicsMagick or ImageMagick for right option. <br />Possible values: None, Line, Plane, Partition'
61 jpg_quality:
62 type: int
63 description: 'Integer: Default JPEG generation quality'
64 SYS:
65 type: container
66 items:
67 fileCreateMask:
68 type: text
69 description: 'File mode mask for Unix file systems (when files are uploaded/created).'
70 folderCreateMask:
71 type: text
72 description: 'As above, but for folders.'
73 createGroup:
74 type: text
75 description: 'Group for newly created files and folders (Unix only). Group ownership can be changed on Unix file systems (see above). Set this if you want to change the group ownership of created files/folders to a specific group. This makes sense in all cases where the webserver is running with a different user/group as you do. Create a new group on your system and add you and the webserver user to the group. Now you can safely set the last bit in fileCreateMask/folderCreateMask to 0 (e.g. 770). Important: The user who is running your webserver needs to be a member of the group you specify here! Otherwise you might get some error messages.'
76 sitename:
77 type: text
78 description: 'Name of the base-site.'
79 encryptionKey:
80 type: text
81 description: 'This is a "salt" used for various kinds of encryption, CRC checksums and validations. You can enter any rubbish string here but try to keep it secret. You should notice that a change to this value might invalidate temporary information, URLs etc. At least, clear all cache if you change this so any such information can be rebuilt with the new key.'
82 cookieDomain:
83 type: text
84 description: 'Restricts the domain name for FE and BE session cookies. When setting the value to ".domain.com" (replace domain.com with your domain!), login sessions will be shared across subdomains. Alternatively, if you have more than one domain with sub-domains, you can set the value to a regular expression to match against the domain of the HTTP request. The result of the match is used as the domain for the cookie. eg. <code>/\.(example1|example2)\.com$/</code> or <code>/\.(example1\.com)|(example2\.net)$/</code>. Separate domains for FE and BE can be set using <a href="#FE-cookieDomain">$TYPO3_CONF_VARS[''FE''][''cookieDomain'']</a> and <a href="#BE-cookieDomain">$TYPO3_CONF_VARS[''BE''][''cookieDomain'']</a> respectively.'
85 cookieSecure:
86 type: int
87 allowedValues:
88 '0': 'Always send the cookie, regardless if the connection is secure'
89 '1': 'Force HTTPS: the cookie will only be set if a secure (HTTPS) connection exists - use this in combination with lockSSL since otherwise the application will fail and throw an exception'
90 '2': 'The cookie will be set in each case, but uses the secure flag if a secure (HTTPS) connection exists'
91 description: 'Indicates that the cookie should only be transmitted over a secure HTTPS connection from the client.'
92 recursiveDomainSearch:
93 type: bool
94 description: 'If set, the search for domain records will be done recursively by stripping parts of the hostname off until a matching domain record is found.'
95 trustedHostsPattern:
96 type: text
97 description: 'Regular expression pattern that matches all allowed hostnames (including their ports) of this TYPO3 installation, or the string "SERVER_NAME" (default). The default value <code>SERVER_NAME</code> checks if the HTTP Host header equals the SERVER_NAME and SERVER_PORT. This is secure in correctly configured hosting environments and does not need further configuration. If you cannot change your hosting environment, you can enter a regular expression here. Examples: <code>.*\.domain\.com</code> matches all hosts that end with <code>.domain.com</code> with all corresponding subdomains. <code>(.*\.domain|.*\.otherdomain)\.com</code> matches all hostnames with subdomains from <code>.domain.com</code> and <code>.otherdomain.com</code>. Be aware that HTTP Host header may also contain a port. If your installation runs on a specific port, you need to explicitly allow this in your pattern, e.g. <code>www\.domain\.com:88</code> allows only <code>www.domain.com:88</code>, <strong>not</strong> <code>www.domain.com</code>. To disable this check completely (not recommended because it is <strong>insecure</strong>) you can use ".*" as pattern.'
98 devIPmask:
99 type: text
100 description: 'Defines a list of IP addresses which will allow development-output to display. The debug() function will use this as a filter. See the function <code>\TYPO3\CMS\Core\Utility\GeneralUtility::cmpIP()</code> for details on syntax. Setting this to blank value will deny all. Setting to "*" will allow all.'
101 ddmmyy:
102 type: text
103 description: 'Format of Day-Month-Year - see PHP-function <a href="http://php.net/date" target="_blank">date()</a>'
104 hhmm:
105 type: text
106 description: 'Format of Hours-Minutes - see PHP-function <a href="http://php.net/date" target="_blank">date()</a>'
107 USdateFormat:
108 type: bool
109 description: 'If TRUE, dates entered in the TCEforms of the backend will be formatted mm-dd-yyyy'
110 loginCopyrightWarrantyProvider:
111 type: text
112 description: 'If you provide warranty for TYPO3 to your customers insert you (company) name here. It will appear in the login-dialog as the warranty provider. (You must also set URL below).'
113 loginCopyrightWarrantyURL:
114 type: text
115 description: 'Add the URL where you explain the extend of the warranty you provide. This URL is displayed in the login dialog as the place where people can learn more about the conditions of your warranty. Must be set (more than 10 chars) in addition with the ''loginCopyrightWarrantyProvider'' message.'
116 textfile_ext:
117 type: text
118 description: 'Text file extensions. Those that can be edited. Executable PHP files may not be editable if disallowed!'
119 mediafile_ext:
120 type: text
121 description: 'Commalist of file extensions perceived as media files by TYPO3. Lowercase and no spaces between!'
122 binPath:
123 type: text
124 description: 'List of absolute paths where external programs should be searched for. Eg. <code>/usr/local/webbin/,/home/xyz/bin/</code>. (ImageMagick path have to be configured separately)'
125 binSetup:
126 type: multiline
127 description: 'List of programs (separated by newline or comma). By default programs will be searched in default paths and the special paths defined by <code>binPath</code>. When PHP has openbasedir enabled the programs can not be found and have to be configured here. Example: <code>perl=/usr/bin/perl,unzip=/usr/local/bin/unzip</code>'
128 setMemoryLimit:
129 type: int
130 description: 'Integer: memory_limit in MB: If more than 16, TYPO3 will try to use ini_set() to set the memory limit of PHP to the value. This works only if the function ini_set() is not disabled by your sysadmin.'
131 phpTimeZone:
132 type: text
133 description: 'timezone to force for all date() and mktime() functions. A list of supported values can be found at <a href="http://php.net/manual/en/timezones.php" target="_blank">php.net</a>. If this is not set, a valid fallback will be searched for by PHP (php.ini''s <a href="http://www.php.net/manual/en/datetime.configuration.php#ini.date.timezone" target="_blank">date.timezone</a> setting, server defaults, etc); and if no fallback is found, the value of "UTC" is used instead.'
134 systemLog:
135 type: bool
136 description: 'Enables the deprecated system log functionality. Log data is written the to the Logging API.'
137 systemLogLevel:
138 type: int
139 allowedValues:
140 '0': 'Severity: Info'
141 '1': 'Severity: Notice'
142 '2': 'Severity: Warning'
143 '3': 'Severity: Error'
144 '4': 'Severity: Fatal Error'
145 description: 'Enable the severity of log messages to be logged (see systemLog option) - Only messages with same or higher severity are logged.'
146 UTF8filesystem:
147 type: bool
148 description: 'If TRUE then TYPO3 uses utf-8 to store file names. This allows for accented Latin letters as well as any other non-latin characters like Cyrillic and Chinese.'
149 systemLocale:
150 type: text
151 description: 'Locale used for certain system related functions, e.g. escaping shell commands. If problems with filenames containing special characters occur, the value of this option is probably wrong. See <a href="http://php.net/manual/en/function.setlocale.php" target="_blank">setlocale()</a>.'
152 reverseProxyIP:
153 type: list
154 description: 'List of IP addresses. If TYPO3 is behind one or more (intransparent) reverse proxies the IP addresses must be added here.'
155 reverseProxyHeaderMultiValue:
156 type: text
157 allowedValues:
158 'none': 'Do not evaluate the reverse proxy header'
159 'first': 'Use the first IP address in the proxy header'
160 'last': 'Use the last IP address in the proxy header'
161 description: 'Defines which values of a proxy header (eg HTTP_X_FORWARDED_FOR) to use, if more than one is found.'
162 reverseProxyPrefix:
163 type: text
164 description: 'Optional prefix to be added to the internal URL (SCRIPT_NAME and REQUEST_URI).'
165 reverseProxySSL:
166 type: text
167 description: '''*'' or list of IP addresses of proxies that use SSL (https) for the connection to the client, but an unencrypted connection (http) to the server. If ''*'' all proxies defined in <a href="#SYS-reverseProxyIP">[SYS][reverseProxyIP]</a> use SSL.'
168 reverseProxyPrefixSSL:
169 type: text
170 description: 'Prefix to be added to the internal URL (SCRIPT_NAME and REQUEST_URI) when accessing the server via an SSL proxy. This setting overrides <a href="#SYS-reverseProxyPrefix">[SYS][reverseProxyPrefix]</a>.'
171 defaultCategorizedTables:
172 type: list
173 description: 'List of comma separated tables that are categorizable by default.'
174 displayErrors:
175 type: int
176 allowedValues:
177 '-1': 'TYPO3 does not touch the PHP setting. If [SYS][devIPmask] matches the user''s IP address, the configured [SYS][debugExceptionHandler] is used instead of the [SYS][productionExceptionHandler] to handle exceptions.'
178 '0': 'Live: Do not display any PHP error message. Sets "display_errors=0". Overrides the value of [SYS][exceptionalErrors] and sets it to 0 (= no errors are turned into exceptions). The configured [SYS][productionExceptionHandler] is used as exception handler.'
179 '1': 'Debug: Display error messages with the registered [SYS][errorHandler]. Sets "display_errors=1". The configured [SYS][debugExceptionHandler] is used as exception handler.'
180 description: 'Configures whether PHP errors or Exceptions should be displayed, effectively setting the PHP option <code>display_errors</code> during runtime.'
181 productionExceptionHandler:
182 type: phpClass
183 description: 'Classname to handle exceptions that might happen in the TYPO3-code. Leave empty to disable exception handling. Default: "TYPO3\CMS\Core\Error\ProductionExceptionHandler". This exception handler displays a nice error message when something went wrong. The error message is logged to the configured logs. Note: The configured "productionExceptionHandler" is used if [SYS][displayErrors] is set to "0" or is set to "-1" and [SYS][devIPmask] doesn''t match the user''s IP.'
184 debugExceptionHandler:
185 type: phpClass
186 description: 'Classname to handle exceptions that might happen in the TYPO3-code. Leave empty to disable exception handling. Default: "TYPO3\CMS\Core\Error\DebugExceptionHandler". This exception handler displays the complete stack trace of any encountered exception. The error message and the stack trace is logged to the configured logs. Note: The configured "debugExceptionHandler" is used if [SYS][displayErrors] is set to "1" or is set to "-1" or "2" and the [SYS][devIPmask] matches the user''s IP.'
187 errorHandler:
188 type: phpClass
189 description: 'Classname to handle PHP errors. E.g.: TYPO3\CMS\Core\Error\ErrorHandler. This class displays and logs all errors that are registered as [SYS][errorHandlerErrors]. Leave empty to disable error handling. Errors will be logged and can be sent to the optionally installed developer log or to the "syslog" database table. If an error is registered in [SYS][exceptionalErrors] it will be turned into an exception to be handled by the configured exceptionHandler.'
190 errorHandlerErrors:
191 type: errors
192 description: 'The E_* constant that will be handled by the [SYS][errorHandler]. Not all PHP error types can be handled! Default is 30466 = <code>E_ALL & ~(E_STRICT | E_NOTICE | E_COMPILE_WARNING | E_COMPILE_ERROR | E_CORE_WARNING | E_CORE_ERROR | E_PARSE | E_ERROR)</code> (see <a href="http://php.net/manual/en/errorfunc.constants.php" target="_blank">PHP documentation</a>).'
193 exceptionalErrors:
194 type: errors
195 description: 'The E_* constant that will be converted into an exception by the default [SYS][errorHandler]. Default is 4096 = <code>E_ALL & ~(E_STRICT | E_NOTICE | E_COMPILE_WARNING | E_COMPILE_ERROR | E_CORE_WARNING | E_CORE_ERROR | E_PARSE | E_ERROR | E_DEPRECATED | E_USER_DEPRECATED | E_WARNING | E_USER_ERROR | E_USER_NOTICE | E_USER_WARNING)</code> (see <a href="http://php.net/manual/en/errorfunc.constants.php" target="_blank">PHP documentation</a>). E_USER_DEPRECATED is always excluded to avoid exceptions to be thrown for deprecation messages.'
196 belogErrorReporting:
197 type: errors
198 description: 'Configures which PHP errors should be logged to the "syslog" database table (extension: belog). If set to "0" no PHP errors are logged to the sys_log table. Default is 30711 = <code>E_ALL & ~(E_STRICT | E_NOTICE)</code> (see <a href="http://php.net/manual/en/errorfunc.constants.php" target="_blank">PHP documentation</a>).'
199 generateApacheHtaccess:
200 type: bool
201 description: 'TYPO3 can create <em>.htaccess</em> files which are used by Apache Webserver. They are useful for access protection or performance improvements. Currently <em>.htaccess</em> files in the following directories are created, if they do not exist: <ul><li>typo3temp/compressor/</li></ul>You want to disable this feature, if you are not running Apache or want to use own rulesets.'
202 systemMaintainers:
203 type: array
204 description: 'A list of backend user IDs allowed to access the Install Tool'
205 features:
206 type: container
207 description: 'New features of TYPO3 that are activated on new installations but upgrading installations can still use the old behaviour'
208 items:
209 unifiedPageTranslationHandling:
210 type: bool
211 description: 'If activated, TCA configuration for pages_language_overlay will never be loaded, and the database table "pages_language_overlay" will not be created.'
212 EXT:
213 type: container
214 items:
215 allowGlobalInstall:
216 type: bool
217 description: 'If set, global extensions in typo3/ext/ are allowed to be installed, updated and deleted etc.'
218 allowLocalInstall:
219 type: bool
220 description: 'If set, local extensions in typo3conf/ext/ are allowed to be installed, updated and deleted etc.'
221 excludeForPackaging:
222 type: list
223 description: 'List of directories and files which will not be packaged into extensions nor taken into account otherwise by the Extension Manager. Perl regular expression syntax!'
224 BE:
225 type: container
226 items:
227 languageDebug:
228 type: bool
229 description: 'If enabled, language labels will be shown with additional debug information.'
230 fileadminDir:
231 type: text
232 description: 'Path to the primary directory of files for editors. This is relative to PATH_site, DefaultStorage will be created with that configuration, do not access manually but via <code>\TYPO3\CMS\Core\Resource\ResourceFactory::getDefaultStorage().</code>'
233 RTE_imageStorageDir:
234 type: text
235 description: 'Default storage directory for Rich Text Editor files.'
236 lockRootPath:
237 type: text
238 description: 'This path is used to evaluate if paths outside of PATH_site should be allowed. Ending slash required!'
239 userHomePath:
240 type: text
241 description: 'Combined folder identifier of the directory where TYPO3 backend-users have their home-dirs. A combined folder identifier looks like this: [storageUid]:[folderIdentifier]. Eg. <code>2:users/</code>. A home for backend user 2 would be: <code>2:users/2/</code>. Ending slash required!'
242 groupHomePath:
243 type: text
244 description: 'Combined folder identifier of the directory where TYPO3 backend-groups have their home-dirs. A combined folder identifier looks like this: [storageUid]:[folderIdentifier]. Eg. <code>2:groups/</code>. A home for backend group 1 would be: <code>2:groups/1/</code>. Ending slash required!'
245 userUploadDir:
246 type: text
247 description: 'Suffix to the user home dir which is what gets mounted in TYPO3. Eg. if the user dir is <code>../123_user/</code> and this value is <code>/upload</code> then <code>../123_user/upload</code> gets mounted.'
248 warning_email_addr:
249 type: text
250 description: 'Email address that will receive notification whenever an attempt to login to the Install Tool is made and that will also receive warnings whenever more than 3 failed backend login attempts (regardless of user) are detected within an hour.'
251 warning_mode:
252 type: bit
253 description: 'Bit 1: If set, <code>warning_email_addr</code> will be notified every time a backend user logs in. Bit 2: If set, <code>warning_email_addr</code> will be notified every time an ADMIN backend user logs in.'
254 lockIP:
255 type: int
256 allowedValues:
257 '0': 'Do not lock Backend User sessions to their IP address at all'
258 '1': 'Use the first part of the editors'' IPv4 address (e.g. "192.") as part of the session locking of Backend Users'
259 '2': 'Use the first two parts of the editors'' IPv4 address (e.g. "192.168") as part of the session locking of Backend Users'
260 '3': 'Use the first three parts of the editors'' IPv4 address (e.g. "192.168.13") as part of the session locking of Backend Users'
261 '4': 'Default: Use the full editors'' IPv4 address (e.g. "192.168.13.84") as part of the session locking of Backend Users (highest security)'
262 description: 'Session IP locking for backend users. See <a href="#FE-lockIP">[FE][lockIP]</a> for details.'
263 sessionTimeout:
264 type: int
265 description: 'Session time out for backend users in seconds. The value must be at least 180 to avoid side effects. Default is 28.800 seconds = 8 hours.'
266 IPmaskList:
267 type: list
268 description: 'Lets you define a list of IP-numbers (with *-wildcards) that are the ONLY ones allowed access to ANY backend activity. On error an error header is sent and the script exits. Works like IP masking for users configurable through TSconfig. See syntax for that (or look up syntax for the function <code>\TYPO3\CMS\Core\Utility\GeneralUtility::cmpIP())</code>'
269 lockBeUserToDBmounts:
270 type: bool
271 description: 'If set, the backend user is allowed to work only within his page-mount. It''s advisable to leave this on because it makes security easy to manage.'
272 lockSSL:
273 type: bool
274 description: 'If set, the backend can only be operated from an SSL-encrypted connection (https). A redirect to the SSL version of a URL will happen when a user tries to access non-https admin-urls'
275 lockSSLPort:
276 type: int
277 description: 'Use a non-standard HTTPS port for lockSSL. Set this value if you use lockSSL and the HTTPS port of your webserver is not 443.'
278 enabledBeUserIPLock:
279 type: bool
280 description: 'If set, the User/Group TSconfig option <code>option.lockToIP</code> is enabled.'
281 cookieDomain:
282 type: text
283 description: 'Same as <a href="#SYS-cookieDomain">$TYPO3_CONF_VARS[''SYS''][''cookieDomain'']</a> but only for BE cookies. If empty, $TYPO3_CONF_VARS[''SYS''][''cookieDomain''] value will be used.'
284 cookieName:
285 type: text
286 description: 'Set the name for the cookie used for the back-end user session'
287 loginSecurityLevel:
288 type: text
289 description: 'Keywords that determines the security level of login to the backend. "normal" means the password from the login form is sent in clear-text, "rsa" uses RSA password encryption (only if the rsaauth extension is installed).'
290 showRefreshLoginPopup:
291 type: bool
292 description: 'If set, the Ajax relogin will show a real popup window for relogin after the count down. Some auth services need this as they add custom validation to the login form. If it''s not set, the Ajax relogin will show an inline relogin window.'
293 adminOnly:
294 type: int
295 allowedValues:
296 '-1': 'Total shutdown for maintenance purposes'
297 '0': 'Default: All users can access the TYPO3 Backend'
298 '1': 'Only administrators / system maintainers can log in, CLI interface is disabled as well'
299 '2': 'Only administrators / system maintainers have access to the TYPO3 Backend, CLI executions are allowed as well'
300 description: 'Restricts access to the TYPO3 Backend - especially useful when doing maintenance or updates'
301 disable_exec_function:
302 type: bool
303 description: 'Don''t use exec() function (except for ImageMagick which is disabled by <a href="#GFX-im">[GFX][im]</a>=0). If set, all file operations are done by the default PHP-functions. This is necessary under Windows! On Unix the system commands by exec() can be used, unless this is disabled.'
304 compressionLevel:
305 type: text
306 description: 'Determines output compression of BE output. Makes output smaller but slows down the page generation depending on the compression level. Requires a) zlib in your PHP installation and b) special rewrite rules for .css.gzip and .js.gzip (please see <code>_.htacces</code> for an example). Range 1-9, where 1 is least compression and 9 is greatest compression. ''true'' as value will set the compression based on the PHP default settings (usually 5). Suggested and most optimal value is 5.'
307 checkStoredRecords:
308 type: bool
309 description: 'If set, values of the record are validated after saving in DataHandler. Disable only if using a database in strict mode.'
310 checkStoredRecordsLoose:
311 type: bool
312 description: 'If set, make a loose comparison ('''' equals 0) when validating record values after saving in DataHandler.'
313 fileDenyPattern:
314 type: text
315 description: 'A perl-compatible regular expression (without delimiters!) that - if it matches a filename - will deny the file upload/rename or whatever. For security reasons, files with multiple extensions have to be denied on an Apache environment with mod_alias, if the filename contains a valid php handler in an arbitrary position. Also, ".htaccess" files have to be denied. Matching is done case-insensitive. Default value is stored in constant FILE_DENY_PATTERN_DEFAULT'
316 interfaces:
317 type: text
318 description: 'This determines which interface options are available in the login prompt (All options: "backend,frontend")'
319 explicitADmode:
320 type: dropdown
321 allowedValues:
322 'explicitAllow': 'Administrators have to explicitly grant access for all editors and groups'
323 'explicitDeny': 'Editors have access to all content types by default, access has to explicitly restricted'
324 description: 'Sets the general allow/deny mode for Content Element Types (CTypes) when granting or restricting access for backend users'
325 flexformForceCDATA:
326 type: bool
327 description: 'If set, will add CDATA to Flexform XML. Some versions of libxml have a bug that causes HTML entities to be stripped from any XML content and this setting will avoid the bug by adding CDATA.'
328 explicitConfirmationOfTranslation:
329 type: bool
330 description: 'If set, then the diff-data of localized records is not saved automatically when updated but requires that a translator clicks the special finish_translation/save/close button that becomes available.'
331 versionNumberInFilename:
332 type: bool
333 description: |
334 <p>
335 If enabled, included CSS and JS files loaded in the TYPO3 Backend will have the timestamp embedded in the filename, ie. <code>filename.1269312081.js</code>.
336 This will make browsers and proxies reload the files if they change (thus avoiding caching issues).
337 <strong>IMPORTANT:</strong> This feature requires extra <code>.htaccess</code> rules to work (please refer to the <code>_.htaccess</code> file shipped with TYPO3).</p>
338 <p>If disabled the last modification date of the file will be appended as a query-string.</p>
339 debug:
340 type: bool
341 description: 'If enabled, the loginrefresh is disabled and pageRenderer is set to debug mode. Furthermore the fieldname is prepended to the label of fields. Use this to debug the backend only!'
342 FE:
343 type: container
344 items:
345 addAllowedPaths:
346 type: list
347 description: 'Additional relative paths (comma-list) to allow TypoScript resources be in. Should be prepended with ''/''. If not, then any path where the first part is like this path will match. That is: ''myfolder/ , myarchive'' will match eg. ''myfolder/'', ''myarchive/'', ''myarchive_one/'', ''myarchive_2/'' ... No check is done to see if this directory actually exists in the root of the site. Paths are matched by simply checking if these strings equals the first part of any TypoScript resource filepath. (See class template, function init() in <code>\TYPO3\CMS\Core\TypoScript\Parser\TypoScriptParser)</code>'
348 debug:
349 type: bool
350 description: 'If enabled, the total parsetime of the page is added as HTTP response header "X-TYPO3-Parsetime". This can also be enabled/disabled via the TypoScript option <code>config.debug = 0</code>.'
351 compressionLevel:
352 type: int
353 description: 'Determines output compression of FE output. Makes output smaller but slows down the page generation depending on the compression level. Requires zlib in your PHP installation. Range 1-9, where 1 is least compression and 9 is greatest compression. ''true'' as value will set the compression based on the PHP default settings (usually 5). Suggested and most optimal value is 5.'
354 pageNotFound_handling:
355 type: text
356 description: '<p>How TYPO3 should handle requests for non-existing/accessible pages.</p> <dl><dt>empty (default)</dt><dd>The next visible page upwards in the page tree is shown.</dd> <dt>''true'' or ''1''</dt><dd>An error message is shown.</dd><dt>String</dt><dd>Static HTML file to show (reads content and outputs with correct headers), e.g. ''notfound.html'' or ''http://www.example.org/errors/notfound.html''.</dd> <dt>Prefix "REDIRECT:"</dt><dd> If prefixed with "REDIRECT:" it will redirect to the URL/script after the prefix.</dd><dt>Prefix "READFILE:"</dt><dd>If prefixed with "READFILE" then it will expect the remaining string to be a HTML file which will be read and outputted directly after having the marker "###CURRENT_URL###" substituted with REQUEST_URI and ###REASON### with reason text, for example: "READFILE:fileadmin/notfound.html".</dd> <dt>Prefix "USER_FUNCTION:"</dt><dd> If prefixed with "USER_FUNCTION:" a user function is called, e.g. "USER_FUNCTION:fileadmin/class.user_notfound.php:user_notFound->pageNotFound" where the file must contain a class "user_notFound" with a method "pageNotFound" inside with two parameters $param and $ref.</dd></dl>'
357 pageNotFound_handling_statheader:
358 type: text
359 description: 'If ''pageNotFound_handling'' is enabled, this string will always be sent as header before the actual handling. This applies to non-access-restriction related errors.'
360 pageNotFound_handling_accessdeniedheader:
361 type: text
362 description: 'If ''pageNotFound_handling'' is enabled, this string will always be sent as header before the actual handling. This applies to access-restricted related errors.'
363 pageNotFoundOnCHashError:
364 type: bool
365 description: 'If TRUE, a page not found call is made when cHash evaluation error occurs, otherwise caching is disabled and page output is displayed.'
366 pageUnavailable_handling:
367 type: text
368 description: '<p>How TYPO3 should handle requests when pages are unavailable due to system problems.</p><dl><dt>empty (default)</dt><dd>An error message is shown.</dd><dt>String</dt><dd>HTML file or URL to show (reads content and outputs with correct headers), e.g. ''unavailable.html'' or ''http://www.example.org/errors/unavailable.html''.</dd><dt>Prefix "REDIRECT:"</dt><dd>If prefixed "REDIRECT:" it will redirect to the URL/script after the prefix.</dd><dt>Prefix "READFILE:"</dt><dd>If prefixed with "READFILE:" then it will expect the remaining string to be a HTML file which will be read and outputted directly after having the marker "###CURRENT_URL###" substituted with REQUEST_URI and ###REASON### with reason text, for example: "READFILE:fileadmin/unavailable.html".</dd><dt>Prefix "USER_FUNCTION:"</dt><dd>If prefixed "USER_FUNCTION:" then it will call a user function, eg. "USER_FUNCTION:fileadmin/class.user_unavailable.php:user_unavailable->pageUnavailable" where the file must contain a class "user_unavailable" with a method "pageUnavailable" inside with two parameters $param and $ref. If the client matches <a href="#SYS-devIPmask">[SYS][devIPmask]</a>, this setting is ignored and the page is shown as normal.</dd></dl>'
369 pageUnavailable_handling_statheader:
370 type: text
371 description: 'If ''pageUnavailable_handling'' is enabled, this string will always be sent as header before the actual handling.'
372 pageUnavailable_force:
373 type: bool
374 description: 'If TRUE, pageUnavailable_handling is used for every frontend page. If the client matches <a href="#SYS-devIPmask">[SYS][devIPmask]</a>, the page is shown as normal. This is useful during temporary site maintenance.'
375 addRootLineFields:
376 type: list
377 description: 'Comma-list of fields from the ''pages''-table. These fields are added to the select query for fields in the rootline.'
378 checkFeUserPid:
379 type: bool
380 description: 'If set, the pid of fe_user logins must be sent in the form as the field ''pid'' and then the user must be located in the pid. If you unset this, you should change the fe_users.username eval-flag ''uniqueInPid'' to ''unique'' in $TCA. This will do: <code>$TCA[''fe_users''][''columns''][''username''][''config''][''eval'']= ''nospace,lower,required,unique'';</code>'
381 lockIP:
382 type: int
383 allowedValues:
384 '0': 'Do not lock Frontend User sessions to their IP address at all'
385 '1': 'Use the first part of the visitors'' IPv4 address (e.g. "192.") as part of the session locking of Frontend Users'
386 '2': 'Default - Use the first two parts of the visitors'' IPv4 address (e.g. "192.168") as part of the session locking of Frontend Users'
387 '3': 'Use the first three parts of the visitors'' IPv4 address (e.g. "192.168.13") as part of the session locking of Frontend Users'
388 '4': 'Use the full visitors'' IPv4 address (e.g. "192.168.13.84") as part of the session locking of Frontend Users (highest security)'
389 description: 'If activated, Frontend Users are locked to (a part of) their public IP (<code>$_SERVER[''REMOTE_ADDR'']</code>) for their session. Enhances security but may throw off users that may change IP during their session (in which case you can lower it to 2 or 3). The integer indicates how many parts of the IP address to include in the check for session (next to the user agent)..'
390 loginSecurityLevel:
391 type: text
392 description: 'See description for <a href="#BE-loginSecurityLevel">[BE][loginSecurityLevel]</a>. Default state for frontend is "normal". Alternative authentication services can implement higher levels if preferred. For example, "rsa" level uses RSA password encryption (only if the rsaauth extension is installed).'
393 lifetime:
394 type: int
395 description: 'If >0 and the option permalogin is >=0, the cookie of FE users will have a lifetime of the number of seconds this value indicates. Otherwise it will be a session cookie (deleted when browser is shut down). Setting this value to 604800 will result in automatic login of FE users during a whole week, 86400 will keep the FE users logged in for a day.'
396 sessionTimeout:
397 type: int
398 description: 'Server side session timeout for frontend users in seconds. Will be overwritten by the lifetime property if the lifetime is longer.'
399 sessionDataLifetime:
400 type: int
401 description: 'If >0, the session data of an anonymous session will timeout and be removed after the number of seconds given (86400 seconds represents 24 hours).'
402 permalogin:
403 type: text
404 description: '<dl><dt>-1</dt><dd>Permanent login for FE users is disabled.</dd><dt>0</dt><dd>By default permalogin is disabled for FE users but can be enabled by a form control in the login form.</dd><dt>1</dt><dd>Permanent login is by default enabled but can be disabled by a form control in the login form.</dd><dt>2</dt><dd>Permanent login is forced to be enabled.</dd></dl> In any case, permanent login is only possible if <a href="#FE-lifetime">[FE][lifetime]</a> lifetime is > 0.'
405 cookieDomain:
406 type: text
407 description: 'Same as <a href="#SYS-cookieDomain">$TYPO3_CONF_VARS[''SYS''][''cookieDomain'']</a> but only for FE cookies. If empty, $TYPO3_CONF_VARS[''SYS''][''cookieDomain''] value will be used.'
408 cookieName:
409 type: text
410 description: 'Set the name for the cookie used for the front-end user session'
411 defaultUserTSconfig:
412 type: multiline
413 description: 'Enter lines of default frontend user/group TSconfig.'
414 defaultTypoScript_constants:
415 type: multiline
416 description: 'Enter lines of default TypoScript, constants-field.'
417 compareValuesWithCurrentConfiguration: false
418 defaultTypoScript_setup:
419 type: multiline
420 description: 'Enter lines of default TypoScript, setup-field.'
421 compareValuesWithCurrentConfiguration: false
422 additionalAbsRefPrefixDirectories:
423 type: text
424 description: 'Enter additional directories to be prepended with absRefPrefix. Directories must be comma-separated. TYPO3 already prepends the following directories: typo3/, typo3temp/, typo3conf/ext/ and all local storages'
425 get_url_id_token:
426 type: text
427 description: 'This is the token, which is substituted in the output code in order to keep a GET-based session going. Normally the GET-session-id is 5 chars (''&amp;ftu='') + hash_length (norm. 10)'
428 enable_mount_pids:
429 type: bool
430 description: 'If enabled, the mount_pid feature allowing ''symlinks'' in the page tree (for frontend operation) is allowed.'
431 hidePagesIfNotTranslatedByDefault:
432 type: bool
433 description: 'If enabled, pages that has no translation will be hidden by default. Basically this will inverse the effect of the page localization setting "Hide page if no translation for current language exists" to "Show page even if no translation exists"'
434 disableNoCacheParameter:
435 type: bool
436 description: 'If set, the no_cache request parameter will become ineffective. This is currently still an experimental feature and will require a website only with plugins that don''t use this parameter. However, using "&amp;no_cache=1" should be avoided anyway because there are better ways to disable caching for a certain part of the website (see COA_INT/USER_INT documentation in TSref).'
437 cacheHash:
438 type: container
439 items:
440 cachedParametersWhiteList:
441 type: array
442 description: 'Only the given parameters will be evaluated in the cHash calculation. Example: tx_news_pi1[uid]'
443 requireCacheHashPresenceParameters:
444 type: array
445 description: 'Configure Parameters that require a cHash. If no cHash is given but one of the parameters are set, then TYPO3 triggers the configured cHash Error behaviour'
446 excludedParameters:
447 type: array
448 description: 'The the given parameters will be ignored in the cHash calculation. Example: L,tx_search_pi1[query]'
449 excludedParametersIfEmpty:
450 type: array
451 description: 'Configure Parameters that are only relevant for the cHash if there''s an associated value available. Set excludeAllEmptyParameters to true to skip all empty parameters.'
452 excludeAllEmptyParameters:
453 type: bool
454 description: 'If true, all parameters which are relevant for cHash are only considered if they are non-empty.'
455 workspacePreviewLogoutTemplate:
456 type: text
457 description: 'If set, points to an HTML file relative to the TYPO3_site root which will be read and outputted as template for this message. Example: <code>fileadmin/templates/template_workspace_preview_logout.html</code>. Inside you can put the marker %1$s to insert the URL to go back to. Use this in <code>&lt;a href="%1$s"&gt;Go back...&lt;/a&gt;</code> links.'
458 versionNumberInFilename:
459 type: dropdown
460 allowedValues:
461 '': "Do not include the version/timestamp of the file at all"
462 'embed': 'Include the timestamp of the last modification timestamp of files embedded in the filename - e.g. "filename.1269312081.js"'
463 'querystring': 'Default - Append the last modification timestamp of the file as query string e.g. "filename.js?1269312081"'
464 description: |
465 Allows to automatically include a version number (timestamp of the file) to referred CSS and JS filenames
466 on the rendered page. This will make browsers and proxies reload the files if they change (thus avoiding caching issues).
467 <strong>IMPORTANT</strong>: ''embed'' requires extra <code>.htaccess</code> rules to work (please refer to the <code>_.htaccess</code> file shipped with TYPO3)'
468 MAIL:
469 type: container
470 items:
471 transport:
472 type: text
473 description: '<dl><dt>mail</dt><dd>Sends messages by delegating to PHP''s internal mail() function. No further settings required. This is the most unreliable option. If you are serious about sending mails, consider using "smtp" or "sendmail".</dd><dt>smtp</dt><dd>Sends messages over the (standardized) Simple Message Transfer Protocol. It can deal with encryption and authentication. Most flexible option, requires a mail server and configurations in transport_smtp_* settings below. Works the same on Windows, Unix and MacOS.</dd><dt>sendmail</dt><dd>Sends messages by communicating with a locally installed MTA - such as sendmail. See setting transport_sendmail_command bellow.<dd><dt>mbox</dt><dd>This doesn''t send any mail out, but instead will write every outgoing mail to a file adhering to the RFC 4155 mbox format, which is a simple text file where the mails are concatenated. Useful for debugging the mail sending process and on development machines which cannot send mails to the outside. Configure the file to write to in the ''transport_mbox_file'' setting below</dd><dt>&lt;classname&gt;</dt><dd>Custom class which implements Swift_Transport. The constructor receives all settings from the MAIL section to make it possible to add custom settings.</dd></dl>'
474 transport_smtp_server:
475 type: text
476 description: '<em>only with transport=smtp</em>: &lt;server:port> of mailserver to connect to. &lt;port> defaults to "25".'
477 transport_smtp_encrypt:
478 type: text
479 description: '<em>only with transport=smtp</em>: Connect to the server using the specified transport protocol. Requires openssl library. Usually available: <em>ssl, sslv2, sslv3, tls</em>. Check <a href="http://www.php.net/stream_get_transports" target="_blank">stream_get_transports()</a>.'
480 transport_smtp_username:
481 type: text
482 description: '<em>only with transport=smtp</em>: If your SMTP server requires authentication, enter your username here.'
483 transport_smtp_password:
484 type: text
485 description: '<em>only with transport=smtp</em>: If your SMTP server requires authentication, enter your password here.'
486 transport_sendmail_command:
487 type: text
488 description: '<em>only with transport=sendmail</em>: The command to call to send a mail locally.'
489 transport_mbox_file:
490 type: text
491 description: '<em>only with transport=mbox</em>: The file where to write the mails into. This file will be conforming the mbox format described in RFC 4155. It is a simple text file with a concatenation of all mails. Path must be absolute.'
492 transport_spool_type:
493 type: text
494 description: '<dl><dt>file</dt><dd>Messages get stored to the file system till they get sent through the command swiftmailer:spool:send.</dd><dt>memory</dt><dd>Messages get send at the end of the running process.</dd><dt>&lt;classname&gt;</dt><dd>Custom class which implements the Swift_Spool interface.</dd></dl>'
495 transport_spool_filepath:
496 type: text
497 description: '<em>only with transport_spool_type=file</em>: Path where messages get temporarily stored. Ensure that this is stored outside of your webroot.'
498 defaultMailFromAddress:
499 type: text
500 description: 'This default email address is used when no other "from" address is set for a TYPO3-generated email. You can specify an email address only (eg. info@example.org).'
501 defaultMailFromName:
502 type: text
503 description: 'This default name is used when no other "from" name is set for a TYPO3-generated email.'
504 defaultMailReplyToAddress:
505 type: text
506 description: 'This default email address is used when no other "reply-to" address is set for a TYPO3-generated email. You can specify an email address only (eg. info@example.org).'
507 defaultMailReplyToName:
508 type: text
509 description: 'This default name is used when no other "reply-to" name is set for a TYPO3-generated email.'
510 HTTP:
511 type: container
512 items:
513 cert:
514 type: mixed
515 description: 'Mixed: Set to a string to specify the path to a file containing a PEM formatted client side certificate. See http://docs.guzzlephp.org/en/latest/request-options.html#cert'
516 connect_timeout:
517 type: int
518 description: 'Default timeout for connection. Exception will be thrown if connecting to remote host takes more than this number of seconds.'
519 proxy:
520 type: mixed
521 description: 'Mixed: Default proxy server as "proxy.example.org", multiple proxies for different protocols can be added separately as array, as well as authentication and port, see http://docs.guzzlephp.org/en/latest/request-options.html#proxy'
522 ssl_key:
523 type: mixed
524 description: 'Mixed: Local certificate and an optional passphrase, see http://docs.guzzlephp.org/en/latest/request-options.html#ssl-key'
525 timeout:
526 type: int
527 description: 'Default timeout for whole request. Exception will be thrown if sending the request takes more than this number of seconds. Should be greater than connection timeout (see above) or "0" to not set a limit. Defaults to "0".'
528 verify:
529 type: mixed
530 description: 'Mixed: Describes the SSL certificate verification behavior of a request. http://docs.guzzlephp.org/en/latest/request-options.html#verify'
531 version:
532 type: text
533 description: 'Default HTTP protocol version. Use either "1.0" or "1.1".'