Configuring web.config Files
The following configuration is essential for a DPE-inside system to work properly.
A web.config file is the configuration file for a web app in the Microsoft IIS web server.
The following areas can be configured in the web.config files:
(Shared) Temp Folders
Temp folders are used for storing temporary files and for sharing cached files (e.g. on-the-fly audio conversion, on-the-fly waveform creation). Especially for file caches used from various components running on different computers it is important that the temp folder is configured to an accessible file share.
If no temp folder is defined, DPE uses the standard temp folder provided by the operating system, e.g. %SystemRoot%\temp. If not existing, the temp folder(s) will be re-created automatically.
Both web.config files contain the optional parameter TempFolder in <appSettings>, eg.<add key = "TempFolder" value="C:\Temp" /> . Any folder can be specified as temp folder for DPE. It the temp folder is shared then both web.config files should have the same temp folder configured.
Whatever temp folder is used, a subdirectory "Dpe" will be created. Components may further create subdirectories inside:
<Temp Folder>\DPE\ may contain the following subdirectories:
For Download.ashx, used for:
For Upload.ashx, used for:
|MediaCache||For Media.ashx with on-the-fly conversion and cleanup|
|WaveformCache||For WaveformService with cleanup|
Automated Cleanup of Temp Folders
The following parameters can be used to customize the automated cleanup of temp folders:
For WaveformCache folder in DpeWebApplication web.config
|WaveformCache.Cleanup.LowWaterMarkGb||Low water mark. Disk usage after cleanup task was executed, default value = 10 (GB)|
|WaveformCache.Cleanup.HighWaterMarkGb||High water mark. If disk usage is above high water mark, delete oldest files (last access date) until disk usage is lower than low water mark, default value = 20 (GB)|
<add key="WaveformCache.Cleanup.LowWaterMarkGb" value="10" /> <add key="WaveformCache.Cleanup.HighWaterMarkGb" value="20" />
For MediaCache folder in DpeWebApplication web.config
|AudioConversionCache.Cleanup.LowWaterMarkGb||Low water mark. Disk usage after cleanup task was executed, default value = 10 (GB)|
|AudioConversionCache.Cleanup.HighWaterMarkGb||High water mark. If disk usage is above high water mark, delete oldest files (last access date) until disk usage is lower than low water mark, default value = 20 (GB)|
<add key="AudioConversionCache.Cleanup.LowWaterMarkGb" value="10" /> <add key="AudioConversionCache.Cleanup.HighWaterMarkGb" value="20" />
Automatic Logout function
DPE application's pages have an automatic logoff time option which can be configured in the web.config file in the DpeWebapplication folder of your installation. The timeout is specified in minutes.
<authentication mode="Forms"> <forms name="MyFormsAuthCookie" timeout="2880" slidingExpiration="true" loginUrl="Logon.aspx" ticketCompatibilityMode="Framework40" /> </authentication>
Cross-Origin Resource Sharing (CORS)
It is standard procedure that web sites only can access web services of the same domain (http://[domain name]/). With CORS the DPE server can allow other client machines to use the DPE Services within another clients web applications.
Enable/configure CORS support in web.config :
<add key="CorsAllowOrigin" value="[domain]"/>
To allow all cross domain calls to DPE services, enter e.g.
<add key="CorsAllowOrigin" value="*"/>
Change the Default SAF Service Port
The communication between the SAF servers and the SAF Monitor section of the DPE Admin is using port 31810 as default. The port must be open in the Firewall configuration, see DPE Firewall Settings. To change the port number enter the following lines into the Web.config within the appsettings element:
<appSettings> <add key="SafServicePort" value="[PORT]"/> </appSettings>
Configure Retries and Timeouts For Notification
For clients being registrered as observer in the DPE WebServices (such as WorkflowService or JobQueueService, the retries and timeouts for notifications are defined as follows in the section appSettings (Default settings in seconds):
<add key="NotificationTimeout" value="10"/> <add key="NotificationRetries" value="1"/> <add key="NotificationThreads" value="2"/>
Index of Options in DpeWebApplication web.config
|TempFolder||Optional, set the temp folder for DPE. Note: workflow-based on-the-fly creation of lores audio or waveform requires the TempFolder to be set to a shared folder.|
|CorsAllowOrigin||Optional, configures CORS, e.g. http://crossdpe:8046|
Normally auto-detected, only needed for decentralized environments, e.g. //MyDpe/DpeWebApplication
|SafServiceBindTo||Optional, normally auto-detected, needed in environments with more than one network Adapter, e.g. 10.1.254.15|
|SafServiceAutomaticStart||Optional, starts SafService together with AppPool, e.g. true, default: false|
|NotificationTimeout||Optional, default=10, default values should be sufficient.|
|NotificationRetries||Optional, default=1, default values should be sufficient.|
Optional (set to 100 from DpeSetup). Sets the minimum amount of threads waiting in the ThreadPool. Available since DPE 1.9.33. BrowserBridgeService long polling requires a lot of thread pool threads. Value should be not lower than the number of DPE clients.
|OnTheFlyAudioConversion.Enabled||Allows to switch off on-the-fly audio conversion, default: true.|
|OnTheFlyAudioConversion.LocalEnabled||Deprecated, default: false. Enables local on-the-fly audio conversion. Please use workflow-based on-the-fly audio conversion instead (which is the default).|
|OnTheFlyAudioConversion.Format||Overrides the default lores format for the on-the-fly audio conversion. Default: [FILETYPE]RAW[FORMAT]MPEG-LAYER3[SAMPLERATE]48000[BITRATE]128[MODE]Stereo[RELAXED_ERROR_CHECK]1.|
|OnTheFlyAudioConversion.Extension||Overrides the default allowed extension for lores audio files. Default: .mp3|
|OnTheFlyWaveform.Enabled||Allows to switch off on-the-fly waveform creation, default: true.|
When streaming files to DPE via the UploadMedium.ashx service, DPE maps file extensions to medium types and entry classes. This is used for example when dropping a file onto Content Manager entry list.
Default mappings can be configured and adapted in web.config.
Example for adding OGG to medium type Audio and to entry class Audio:
Only the media type or classes specified will be changed from the default, e.g. in the above example mapping for Video would not be changed.
The complete syntax is:
Where MediumTypeSpecifier is
Where Ext can be specified with or without leading dot. It is also possible to specify no extension at all.
It also possible to disable a mapping by specifying no extension at all, e.g.
Current default media type mappings are
Current default entry class mappings are
Only needed when the machine you are running the DPE Server has a windows scaling factor not equal to 100%.
Inside from IIS we cannot reliable detect the windows scaling factor needed for correct conversion of line heights in RTF documents. If you have for example a windows scaling of 125% on your backend server set this value to 125.
|SkipReverseDns||The DPE Server tries to detect the client machine name by using reverse DNS. This does not work outside of your companies domain. Set this value to 1 when your DPE Server is running in the cloud to skip reverse DNS and to avoid getting incorrect machine names.|
Starting with DPE Server 2.5.138 this key replaces the Global|Default|Common|DpeDefaultComputerName parameter:
On DPE login, if the computer name could not be retrieved automatically by the web application (e.g. computer outside of a domain), the DpeDefaultComputerName value is applied by default and saved in a cookie for later usage. This way the user is not asked for entering the computer name. If the parameter is missing, and the computer name is not retrieved then the web application will ask explicitly for the computer name on the login page.
On startup the DPE Server tries to send restart notifications to registered observers, e.g. DPE Processors. Restart notifications reduce the time needed until the SAF modules re-register as observers.
The following modes are available (and can be combined in a comma-separated list, e.g. "$,name1,name2")
This setting is useful in DPE Server fail-over scenarios where the public DPE Server name is different from the real machine name, e.g.
|Experimental or Advanced Debugging Options|
Optional, Adds a HTTP response header containing MachineName to all DPE responses (DPE >= 1.7.104, set to "1"). Can be used to analyse DNS resolution.
Optional, Adds a prefix containing MachineName to all log messages written by LoggerClient (DPE >= 1.7.104, set to "1"). Can be used to analyse DNS resolution.
Optional, activates and sets the path to low-level log files tracking on HTTP request level, e.g. "C:\Temp\DpeLogs\MyLogs.log". A new file will be created per hour named like the filename body postfixed by a date and hour text e.g. MyLogs_2201012_03.log
Note: this may slow down execution performance so make sure you switch it off after testing.
Note: this may create large files with thousands of log lines in short time.
|HttpReqFileLogIncludingRegex||Optional, a regular expression filter that specifies the lines of text that are included in the log, e.g. "ContentService" or "EasyQueryChangeNumber"|
|HttpReqFileLogExcludingRegex||Optional, a regular expression filter that specifies the lines of text that are excluded from the log, e.g. "LoggingService"|
Optional, default: "BUDr"
|Experimental Faceted Search Options|
Configures faceted search on Log page. Default: "Created,Level,Category,ComputerName,UserName,Component"
|RegistryFacets||Configures faceted search on Parameter files page. Default: "Type,Modified,Created"|
|WorkflowFacets||Configures faceted search on Workflow Monitor page. Default: "Created,State,WorkflowType,Creator,CreatingComponent"|
|SafMonitorFacets||Configures faceted search on Workflow Monitor page. Default: "Connection,State,Computer,Server,Type,Version"|
Configures faceted search on Content Manager page. Default: "Modified,State,Class,Ready,Perfect,Invalid"
Comma-separated list of facets. Each facet is specified in the following format:
Additional parameter keys can be abbreviated, e.g. N instead of Name.
OrderChar is one of...
Example using existing hard-coded facets:
Example that specifies a facet by using the General-facet together with some configuration:
Example which maps facet values to a display text, e.g. the value 2 is displayed as "Group":
Example with GeneralDateTime-facet: