forked from lucee/lucee-dockerfiles
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathlucee-server.xml
More file actions
354 lines (291 loc) · 16.4 KB
/
lucee-server.xml
File metadata and controls
354 lines (291 loc) · 16.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
<?xml version="1.0" encoding="UTF-8"?><!--
Path placeholders:
{lucee-server}: path to the lucee server directory typical where the lucee.jar is located
{lucee-config}: same as {lucee-server} in server context and same as {lucee-web} in web context}
{temp-directory}: path to the temp directory of the current user of the system
{home-directory}: path to the home directory of the current user of the system
{web-root-directory}: path to the web root
{system-directory}: path to thesystem directory
{web-context-hash}: hash of the web context
--><cfLuceeConfiguration salt="4FDA588E-318A-445C-898736AA1F229A69" version="5.2">
<!--
system:
out (output-stream)
- default (write out to default output stream)
- null (write no output)
- class:<class> (class that implements java.io.PrintWriter)
- file:<file> (file to write in)
err (err-stream)
- default (write out to default output stream)
- null (write no output)
- class:<class> (class that implements java.io.PrintWriter)
- file:<file> (file to write in)
-->
<system err="default" out="null"/>
<!-- definition of all database used inside your application. -->
<!-- above you can find some definition of jdbc drivers (all this drivers are included at lucee) -->
<!-- for other database drivers see at: -->
<!-- - http://servlet.java.sun.com/products/jdbc/drivers -->
<!-- - http://sourceforge.net -->
<!-- or ask your database distributor -->
<data-sources psq="false">
</data-sources>
<!--
deploy-directory - directory where java classes will be deployed
custom-tag-directory - directory where the custom tags are
tld-directory / fld-directory - directory where additional Function and Tag Library Deskriptor are.
temp-directory - directory for temporary files (upload aso.)
-->
<file-system fld-directory="{lucee-config}/library/fld/" function-directory="{lucee-config}/library/function/" tag-directory="{lucee-config}/library/tag/" temp-directory="{lucee-config}/temp/" tld-directory="{lucee-config}/library/tld/">
</file-system>
<!--
writers you can select with attribute format at tag dump
name - name of the writer
class - class that implement interface "lucee.runtime.dump.DumpWriter"
default - is this the default writer for the console or the bowser (browser,console)
-->
<dump-writers>
<dump-writer class="lucee.runtime.dump.HTMLDumpWriter" default="browser" name="html"/>
<dump-writer class="lucee.runtime.dump.TextDumpWriter" default="console" name="text"/>
<dump-writer class="lucee.runtime.dump.ClassicHTMLDumpWriter" name="classic"/>
<dump-writer class="lucee.runtime.dump.SimpleHTMLDumpWriter" name="simple"/>
</dump-writers>
<remote-clients directory="{lucee-config}remote-client/"/>
<resources>
<!--
arguments:
lock-timeout - define how long a request wait for a lock
-->
<default-resource-provider arguments="lock-timeout:1000;" class="lucee.commons.io.res.type.file.FileResourceProvider"/>
<!--
arguments:
socket-timeout - With this option set to a non-zero timeout,
a read call on the InputStream associated
with this Socket will block for only this amount
of time.
If the timeout expires, a java.net.SocketTimeoutException is raised,
though the Socket is still valid.
The option must be enabled prior to entering the blocking operation to have effect.
The timeout must be > 0. A timeout of zero is interpreted as an infinite timeout.
(in milliseconds)
client-timeout - how long a conection kep established (in milliseconds)
lock-timeout - define how long a request wait for a lock (in milliseconds)
-->
<resource-provider arguments="lock-timeout:20000;socket-timeout:-1;client-timeout:60000" class="lucee.commons.io.res.type.ftp.FTPResourceProvider" scheme="ftp"/>
<!--
arguments:
lock-timeout - define how long a request wait for a lock
case-sensitive - is zip handled case-sensitive or not
asynchronus - yes or no; define if a buffer is used to synchronize data to zip file.
no make resource very slow
-->
<resource-provider arguments="lock-timeout:1000;case-sensitive:true;" class="lucee.commons.io.res.type.zip.ZipResourceProvider" scheme="zip"/>
<!--
arguments:
lock-timeout - define how long a request wait for a lock
case-sensitive - is zip handled case-sensitive or not
-->
<resource-provider arguments="lock-timeout:1000;case-sensitive:true;" class="lucee.commons.io.res.type.tar.TarResourceProvider" scheme="tar"/>
<!--
arguments:
lock-timeout - define how long a request wait for a lock
case-sensitive - is zip handled case-sensitive or not
-->
<resource-provider arguments="lock-timeout:1000;case-sensitive:true;" class="lucee.commons.io.res.type.tgz.TGZResourceProvider" scheme="tgz"/>
<!--
arguments:
lock-timeout - define how long a request wait for a lock
case-sensitive - is http handled case-sensitive or not
-->
<resource-provider arguments="lock-timeout:10000;case-sensitive:false;" class="lucee.commons.io.res.type.http.HTTPResourceProvider" scheme="http"/>
<!--
arguments:
lock-timeout - define how long a request wait for a lock
case-sensitive - is http handled case-sensitive or not
-->
<resource-provider arguments="lock-timeout:10000;case-sensitive:false;" class="lucee.commons.io.res.type.http.HTTPSResourceProvider" scheme="https"/>
<!--
arguments:
lock-timeout - define how long a request wait for a lock
case-sensitive - is http handled case-sensitive or not
-->
<!--
this providers uses the jcifs library. see http://jcifs.samba.org/
arguments:
resolveOrder - maps to jcifs.resolveOrder property, defaults to 'DNS'
smb.client.dfs.disabled - maps to jcifs.smb.client.dfs.disabled property. defaults to 'true'
NOTE: these defaults assume DNS lookups instead of workgroup/WINS. These settings make smb interactions faster.
<resource-provider
scheme="smb"
class="lucee.commons.io.res.type.smb.SMBResourceProvider"
arguments=""/>
-->
<resource-provider arguments="lock-timeout:10000" bundle-name="s3.extension" bundle-version="0.9.4.114" class="org.lucee.extension.resource.s3.S3ResourceProvider" scheme="s3"/>
</resources>
<!--
scope configuration:
cascading (expanding of undefined scope)
- strict (argument,variables)
- small (argument,variables,cgi,url,form)
- standard (argument,variables,cgi,url,form,cookie)
cascade-to-resultset: yes|no
when yes also allow inside "output type query" and "loop type query" call implizid call of resultset
merge-url-form:yes|no
when yes all form and url scope are synonym for both data
client-directory-max-size
maximum size in bytes of the client scope directory (used for default type file)
client-max-age
the max age of the client scope in days
-->
<scope applicationtimeout="1,0,0,0" cascade-to-resultset="yes" cascading="standard" client-directory-max-size="10mb" client-max-age="90" clientmanagement="no" merge-url-form="no" requesttimeout="0,0,0,50" sessionmanagement="yes" sessiontimeout="0,0,30,0" setclientcookies="yes" setdomaincookies="no"/>
<mail spool-enable="yes" spool-interval="5" timeout="30">
</mail>
<mappings>
<!--
directory mapping:
inspect-template: never|once|always|<empty-string>
never - when a template s loaded, lucee no longer checks for changes on that template
once - Lucee only once per request check if the file has changed
always - check for changes with every access on the file
<empty-string> - no mapping specific setting, inherit setting config
virtual:
virtual path of the application
example: /somedir/
physical:
physical path to the apllication
example: d:/projects/app1/webroot/somedir/
archive:
path to a archive file:
example: d:/projects/app1/rasfiles/somedir.ras
primary: archive|physical
define where lucee first look for a called cfml file.
for example when you define physical you can partiquel overwrite the archive.
-->
<mapping archive="" inspect-template="once" listener-mode="modern" listener-type="curr2root" physical="{lucee-server}/context/" primary="physical" readonly="yes" virtual="/lucee-server/"/>
<mapping archive="{lucee-config}/context/lucee-context.lar" inspect-template="once" listener-mode="modern" listener-type="curr2root" physical="{lucee-config}/context/" primary="physical" readonly="yes" virtual="/lucee/"/>
<mapping archive="{lucee-config}/context/lucee-admin.lar" inspect-template="once" physical="{lucee-config}/context/admin" primary="physical" readonly="true" toplevel="true" virtual="/lucee/admin"/>
<mapping archive="{lucee-config}/context/lucee-doc.lar" inspect-template="once" primary="archive" readonly="true" toplevel="true" virtual="/lucee/doc"/>
</mappings>
<custom-tag>
<mapping inspect-template="never" physical="{lucee-config}/customtags/"/>
</custom-tag>
<ext-tags>
<ext-tag class="lucee.cfx.example.HelloWorld" name="HelloWorld" type="java"/>
</ext-tags>
<!--
component:
base:
path to base component for every component that have no base component defined
data-member-default-access: remote|public|package|private
access type of component data member (variables in this scope)
-->
<component base="/lucee/Component.cfc" data-member-default-access="public" dump-template="/lucee/component-dump.cfm">
<mapping inspect-template="never" physical="{lucee-web}/components/" primary="physical" virtual="/default"/>
<mapping inspect-template="never" physical="{lucee-server}/components/" primary="physical" readonly="true" virtual="/default-server"/></component>
<!--
regional configuration:
locale: default: system locale
define the locale
timezone: default:maschine configuration
the ID for a TimeZone, either an abbreviation such as "PST",
a full name such as "America/Los_Angeles", or a custom ID such as "GMT-8:00".
timeserver: [example: swisstime.ethz.ch] default:local time
dns of a ntp time server
-->
<regional timeserver="pool.ntp.org"/>
<!--
orm configuration:
engine-class: class that implements interface lucee.runtime.orm.ORMEngine
timezone: default:maschine configuration
the ID for a TimeZone, either an abbreviation such as "PST",
a full name such as "America/Los_Angeles", or a custom ID such as "GMT-8:00".
timeserver: [example: swisstime.ethz.ch] default:local time
dns of a ntp time server
-->
<orm engine-bundle-name="hibernate.extension" engine-bundle-version="3.5.5.68" engine-class="org.lucee.extension.orm.hibernate.HibernateORMEngine"/>
<!--
enable and disable debugging
-->
<debugging debug="no" log-memory-usage="no" show-query-usage="no" template="/lucee/templates/debugging/debugging.cfm"/>
<!--
application:
listener-type: none|classic|modern|mixed (default: mixed)
none: no application listener handling
classic: search only for Application.cfm
modern: search only for Application.cfc
mixed: search for Application.cfc and Application.cfm
listener-mode: root|curr|curr2root (default:curr2root)
define where the Application.cfc/Application.cfm will be searched
root: search only in webroot
current: search only in current directory
curr2root: search the App... from current directory up to root.
-->
<application listener-mode="curr2root" listener-type="mixed"/>
<update location="http://stable.lucee.org" type="manual"/>
<!--
flex:
configuration: xml|manual (default: xml)
xml: deploy default configuration for the MessageBrokerServlet as xml to th WEB-INF directory
manual: the configuration is up to the user, lucee does nothing
caster-class: shortcut (modern,classic) or AMFCaster class.
- classic (default): Build in AMFCaster follows the implementation of other engines.
- modern: Build in AMFCaster based on classic AMFCaster improved in functionality.
- <class-name>: full class path of class implemeting interface AMFCaster (http://www.lucee.org/javadoc/lucee/runtime/net/amf/AMFCaster.html)
caster-class-arguments: init arguments provided to the AMFCaster init method, use "CSS" syntax.
-->
<flex configuration="manual"/>
<!--
LOGGING
===========================
Possible Layouts:
- - - - - - - - - - - - - -
Classic:
Same layout as with Lucee 1 - 4.1
HTML:
a HTML table, possible arguments are
- locationinfo (boolean): By default, it is set to false which means there will be no location information output by this layout. If the the option is set to true, then the file name and line number of the statement at the origin of the log statement will be output.
- title: The Title option takes a String value. This option sets the document title of the generated HTML document.
XML:
The output of the XMLLayout consists of a series of log4j:event elements as defined in the log4j.dtd. It does not output a complete well-formed XML file. The output is designed to be included as an external entity in a separate file to form a correct XML file.
- locationinfo (boolean): By default, it is set to false which means there will be no location information output by this layout. If the the option is set to true, then the file name and line number of the statement at the origin of the log statement will be output.
- properties: Sets whether MDC key-value pairs should be output, default false.
Pattern:
A flexible layout configurable with pattern string.
- pattern: This is the string which controls formatting and consists of a mix of literal content and conversion specifiers. for more details see: http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/PatternLayout.html
<layout-class>:
A full class path to a Layout class available in the enviroemnt with a empty constructor.
for every argument defined lucee tries to call a matching setter method
Possible Appenders:
- - - - - - - - - - - - - -
Console:
logs events to to the error or output stream
- streamtype: "output" or "error"
Resource:
Logs error to a resource (locale file, ftp, zip, ...)
- path: path to the locale file
-charset (default:resource charset): charset used to write the file
- maxfiles (default:10): maximal files created
- maxfilesize (default:1024*1024*10): the maxial size of a log file created
<appender-class>:
A full class path to a Appender class available in the enviroemnt with a empty constructor.
for every argument defined lucee tries to call a matching setter method
-->
<logging>
<logger appender="resource" appender-arguments="path:{lucee-config}/logs/mapping.log" layout="classic" name="mapping"/>
<logger appender="resource" appender-arguments="path:{lucee-config}/logs/rest.log" layout="classic" name="rest"/>
<logger appender="resource" appender-arguments="path:{lucee-config}/logs/gateway.log" layout="classic" name="gateway"/>
<logger appender="resource" appender-arguments="path:{lucee-config}/logs/remoteclient.log" layout="classic" level="info" name="remoteclient"/>
<logger appender="resource" appender-arguments="path:{lucee-config}/logs/orm.log" layout="classic" name="orm"/>
<logger appender="resource" appender-arguments="path:{lucee-config}/logs/mail.log" layout="classic" name="mail"/>
<logger appender="resource" appender-arguments="path:{lucee-config}/logs/search.log" layout="classic" name="search"/>
<logger appender="resource" appender-arguments="path:{lucee-config}/logs/scheduler.log" layout="classic" name="scheduler"/>
<logger appender="resource" appender-arguments="path:{lucee-config}/logs/scope.log" layout="classic" name="scope"/>
<logger appender="resource" appender-arguments="path:{lucee-config}/logs/application.log" layout="classic" name="application"/>
<logger appender="resource" appender-arguments="path:{lucee-config}/logs/exception.log" layout="classic" name="exception"/>
<logger appender="resource" appender-arguments="path:{lucee-config}/logs/trace.log" layout="classic" name="trace"/>
<logger appender="resource" appender-arguments="path:{lucee-config}/logs/thread.log" layout="classic" name="thread"/>
<logger appender="resource" appender-arguments="path:{lucee-config}/logs/deploy.log" layout="classic" name="deploy"/>
<logger appender="resource" appender-arguments="path:{lucee-config}/logs/requesttimeout.log" layout="classic" name="requesttimeout"/>
<logger appender="resource" appender-arguments="path:{lucee-config}/logs/memory.log" layout="classic" name="memory"/>
</logging>
</cfLuceeConfiguration>