Redirected from Deki/Configuration
10 of 10 found this page helpful

Configuration keys and values

  • You do not have permissions to view this page - please try logging in.

Overview

Configuration of the MindTouch API service is handled a startup xml file (/etc/dekiwiki/mindtouch.deki.startup.xml) and the database table 'config'.  The xml file is used by Dream to start the MindTouch service and setup the environment while the 'config' table holds options that can generally be set via the control panel (/deki/cp/configuration.php  or by going to Control Panel -> Configuration -> Advanced Config). Both are described here.

MindTouch Settings

Configuration Key Default Value Changelog
admin/email   1.8.2
admin/contact-threshold 1 1.8.2
cache/master request 9.12
cache/anonymous-output false 8.05.1
cache/anonymous-output-short 300 8.05.1
cache/anonymous-output-long 3600 8.05.1
content/new-user   8.05.2
content/create-user-homepage-on-login (deprecated) true 9.02
db-catalog   1.8.3
db-password   1.8.3
db-server   1.8.3
db-user   1.8.3
editor/safe-html true 1.8.2
editor/web-link-nofollow true 9.12.2
events/enable-page-view-events false 9.02
feed/diff-cache false 9.12.2
feed/recent-changes-scan-size 10000 9.12
files/blocked-extensions exe, vbs, scr, reg, bat, com 1.8.1
files/enable-unsafe-ie-inlining false 9.08
files/imagemagick-extensions bmp, jpg, jpeg, png, gif 1.8.1
files/imagemagick-max-size 2000000 1.8.1
files/imagemagick-thumbnail-pixels 160 9.02.2
files/imagemagick-webview-pixels 550 9.02.2
files/max-export-size 10000000 11.0
files/max-file-size 268435456 1.8.1
files/max-import-size 10000000 11.0
files/max-pdf-export-size 100 11.0
gravatar/default   8.05.2
gravatar/rating g 8.05.2
gravatar/secure   8.08.1a
gravatar/size 80 8.05.2
instance/mode onpremise 10.0.3
languages   8.05
mail/smtp-servers   1.8.3
mail/smtp-username   1.8.3
mail/smtp-password   1.8.3
packageupdater/username   10.0
page-subscription/email-format both 9.12
page-subscription/from-address   9.12
page-subscription/use-short-email-address false 10.0.2
pages/max-diff-size 25000 10.1.1
pages/max-page-size 100000 10.1.1
pages/max-sitemap-size 50000 10.1
privacy/expose-user-email false 9.08
script/globals   11.0
script/site-users-limit 0 11.0
script/timeout 60 10.0.2
search/rating-promote-boost 5 10.0
search/rating-demote-boost 0 10.0
search/rating-count-threshold 1000 10.0
search/rating-rank-midpoint 0.2 10.0
search/search-popularity-boost 5 10.0
search/search-popularity-threshold 100 10.0
search/termquery see below 10.0
security/allow-anon-account-creation true 1.8.1d
security/cookie-expire-secs 604800 1.8.1d
security/new-account-role Contributor 1.8.1d
security/allow-trusted-auth (deprecated) false 8.05.1
security/trusted-auth-provider-id (deprecated)   8.05.1
security/homepage-grant-role   8.05.2
security/admin-user-for-impersonation sysop or admin 8.05.2
security/authtokensalt   9.02
site/search-disabled false 1.8.1
stats/page-hit-counter true 8.05.1
stats/slow-page-render-alert   10.1
storage/fs/cache-path   1.8.1
storage/fs/path   1.8.1
storage/s3/bucket   1.8.1
storage/s3/privatekey   1.8.1
storage/s3/publickey   1.8.1
storage/s3/prefix   1.8.1
storage/s3/timeout   1.8.1
storage/s3/fscache-path string 11.0
storage/type fs 1.8.1
ui/analytics-key UA-68075-16 1.8.1
ui/banned-words   1.8.1
ui/comment-count 15 1.8.1
ui/custom/bodycss   1.8.2
ui/custom/css   1.8.2
ui/dynamic-nav true 1.8.1
ui/default-auth-service   1.8.3
ui/external-link-target _blank 9.02
ui/language en-us 1.8.1
ui/logo (deprecated) /common/logo/logo.png 1.8.1
ui/logo-uri   1.8.3
ui/nav-max-items 25 1.8.3
ui/nav-max-width 1600 8.0.7
ui/nav-type compact 10.0
ui/sitename DekiWiki (1.81) 1.8.1
ui/skin neutral 1.8.1
ui/template ace 1.8.1
ui/toc-max-heading 6 9.02
ui/use-cdn false 1.8.1d
ui/logo-maxwidth 280 N/A
ui/logo-maxheight 72 N/A

Setting Descriptions

   Maximum number of pages the system let's  export.

admin/email string - available in PHP as $wgAdminEmail
Email address of person to contact for technical problems
admin/contact-threshold integer - available in PHP as $wgAdminContactThreshold
Number of hours before emailing admin in ca se of a 502 "Service Not Available" error
cache/master string
Describes the type of data caching, if any, that is being performed to reduce database queries. Possible values are 'false' to disable caching, 'request' to cache data for the lifetime of a request, and 'instance' to cache data between requests leading to fewest DB queries. This is not available on MindTouch Core. (default: request)
cache/services bool
Enable caching of authentication providers and extensions to reduce database calls. (default: false)
cache/users bool
Enable caching of user data to reduce database calls. (default: false)
cache/bansbool
Enable caching of bans to reduce database calls. (default: false)
cache/anonymous-outputbool
Enable caching of generated output for the anonymous user for several API calls. This will greatly improve performance for anonymous users at the cost of their data being slightly out of date. This is very useful for internet sites experiencing a burst of anonymous users. (default: false)
cache/anonymous-output-shortinteger
If cache/anonymous-output is enabled, this is the time in seconds to cache the shorter ttl calls described below(default: 300)
cache/anonymous-output-longinteger
If cache/anonymous-output is enabled, this is the time in seconds to cache the longer ttl calls described below(default: 3600)
content/new-user string
Page to use as content for new user page.  For example, could be used to reference a template page, such as "Template:UserProfile" (w/o quotes).  The contents of this page would then be used as the contents of the new user page. If none provided, system inserts the default text:  
		{{wiki.localize('System.API.new-user-page-text')}}
content/create-user-homepage-on-login bool
(NOTE: This is deprecated for 10.0. Homepages are always created for users.) User homepages are created on login by default. Set to false to disable this behavior. Note that users require UPDATE rights on the root page in order to create their homepage later. 
editor/safe-html boolean
Whether or not to remove potentially unsafe html tags
editor/web-link-nofollow boolean
Whether or not external web links have the "nofollow" class.
events/enable-page-view-events boolean
Whether page view events are generated in the Deki event bus
feed/diff-cache bool
Cache page diffs computations
feed/recent-changes-scan-size integer
Limit how many most recent site-wide changes are looked at to populate Recent Changes
files/blocked-extensions string, as comma separated list
Unallowed extensions as file attachments
files/enable-unsafe-ie-inlining string, as comma separated list
Enable inlining of content that cannot be guaranteed to not be incorrect mimetype which may result in IE6 & IE7 content-type snooping to execute the content
files/imagemagick-extensions string, as comma separated list
File extensions that will generate image previews
files/imagemagick-max-size integer
Maximum image size for preview generation (setting this value too high may choke your memory usage)
files/imagemagick-thumbnail-pixels integer
Maximum pixel dimensions of a thumbnail-sized image
files/imagemagick-webview-pixels integer
Maximum pixel dimensions of a webview-sized image
files/max-export-size 
Maximum size of an export, taking page's content, page's files, and page's properties into account. The unit of measure is bytes.
files/max-file-size integer
Maximum file size for file attachments (checked on upload); ensure that this value matches post_max_size and upload_max_filesize in php.ini
files/max-import-size integer
Maximum file size when trying to import a tree of pages. The unit of measure is bytes.
files/max-pdf-export-size
Maximum number of pages when exporting a tree of pages to PDF format.
gravatar/default string
Determines the default gravatar to show if user has not defined one.  Possible values are identicon, monsterid, and wavatar (these are all auto-generating algorithms with unique images for each user). If omitted, the gravatar logo is used as default.
gravatar/rating string
Determines which gravatar to show when a user has multiple associated images based on rating.  Possible values are g, pg, r, and x.
gravatar/size integer
Determines the size of the gravatar to show.  Possible values range from 1 to 512.
gravatar/secure string
Add an arbitrary string in front of the email address to prevent reverse hash look-ups. If set to "hidden", MindTouch will hide the user's e-mail hash and gravatar link from everyone except an admin user or if a user looks up their own information.
instance/modestring
Determines whether the instance is running in 'onpremise' or 'cloud' mode
languages string
Converts Deki into "multi-language" mode which:
- Adds "Page Properties" dialog which allows you to set a language to a page
- Adds "User preferences" which allows each user to select their own language (from a dropdown languages config key list)
- Adds dropdowns which appear for Search and Tags to allow users to filter result sets
mail/smtp-servers string - available in PHP as $wgSMTPServers
SMTP servers; separate multiple servers with semicolons
mail/smtp-username string - available in PHP as $wgSMTPUser
SMTP authentication username
mail/smtp-password string - available in PHP as $wgSMTPPwd
SMTP authentication password
page-subscription/email-format string
Used to set page change notification email format: (both|plaintext|html)
page-subscription/from-address string
Email address that page change notifications should be sent from
page-subscription/use-short-email-address bool
Use 'foo@bar.com' instead of the longer '"Foo Bar" <foo@bar.com>' email format
packageupdater/username string
Specify custom username to be used by package importer.  By default, the package importer attempts to use the 'admin' or 'sysop' accounts.  If neither account exists or does not corresponds to an account with admin rights, then a custom username must be provided.
pages/max-diff-size (int)
Specify the maximimum diff size to compute.  If two documnts being compared exceed this limit, there will be no summary of what has changed.
pages/max-page-size (integer)
Specify the maximum length of a document expressed in XML nodes.  An element node counts for two (opening and closing occurrence), text nodes count for one.
pages/max-sitemap-size (integer)
Specify the maximum number of pages for being able to create a sitemap, if the limit is exceeded a HTTP Forbidden response is issued.
privacy/expose-user-email boolean
If enabled the email address of users is exposed via the API as well as dekiscript. Default behavior is to only expose email addresses to admins and if a user is looking up their own info.
script/globals (string)
When set, the specified template path is loaded using require() before each page execution and the exported values are made available as local variables.
script/site-users-limit integer
Maximum number of results returned by site.users.  Subset is limited to most recently logged in users.
script/timeout integer
Maximum seconds dekiscript may take to render a page before being aborted.
search/rating-promote-boost integer
Maximum position boost that ratings can have on a search result item
search/rating-demote-boost integer
Maximum position demotion ratings can have on a search result item
search/rating-count-threshold integer
Number of votes at which rating boost is maximized
search/rating-rank-midpoint double
Ratings are a value between 0 and 1. The midpoint allows you to define at which fractional value a rating is considered positive rather than negative
search/search-popularity-boost integer
Maximum position boost that a search result item's selection popularity can have
search/search-popularity-threshold integer
Popularity (times item has been selected as the prefered result) at which maximum boost is attained
search/termquery
query template for term based queries. The {0} is replaced with the computed query to search several fields with different boosts. The default termquery is "content:{0} title:{0}^10 path.title:{0}^4 description:{0}^3 tag:{0}^2 comments:{0}"
content:{0} title:{0}^10 path.title:{0}^4 description:{0}^3 tag:{0}^2 comments:{0}
security/allow-anon-account-creation boolean
Whether or not new accounts can be self-created from the login page
security/cookie-expire-secs integer
Sets the authentication expiration time in seconds. Setting to 0 forces the authentication to be valid until the browser is closed.
security/new-account-role string
Default role for new accounts
security/allow-trusted-auth integer
Deprecated. It is now possible to login as any user, given the api key.
security/homepage-grant-role string
If this role name is provided, a grant is given to the user on their homepage when a user is created. This allows users having no rights given to them individually or through group memberships to still make changes to their homepage.
security/admin-user-for-impersonation string
The name of a user with admin rights. This is used for anonymous user and homepage creation as well as anywhere else that requires a temporary elevation of rights. By default, users 'sysop' or 'admin' are used.
security/authtokensalt string
A string to use for salting generated authtokens for added security. Setting or changing this will invalidate all users current authtokens forcing them to relogin
stats/page-hit-counter bool
Controls updates to each page's hit counter. Setting to false will reduce load on the DB by being able to more effectively use the query cache at the cost of the popular pages feature. (default: true)
stats/slow-page-render-alert double
Detect slow page renders and automatically emit them to the log file.  The configuration value is the timelimit in seconds when to log.
storage/fs/cache-path string
Location for storing image previews on disk. Default is {deki-path}/attachments/.cache
storage/fs/path string
Location for storing file attachments on disk. Default is {deki-path}/attachments
storage/s3/bucket string
S3 bucket to use for storage (ensure this exists)
storage/s3/privatekey string
Secret access key for your S3 account
storage/s3/publickey string
Access key for your S3 account
storage/s3/prefix string
Directory within your bucket that contains all attachments. You can set this to the name of your wiki.
storage/s3/timeout integer
Timeout in seconds for S3 requests
storage/s3/fscache-path string
The path to the server's S3 attachment disk cache. Attachments are stored for GET requests to avoid network pipes from client to S3
storage/type string
File storage type: filesystem (fs) or Amazon S3 (s3)
ui/analytics-key string
Google Analytics account key for traffic logging
site/search-disabled string - available in PHP as $wgDisableTextSearch
Disable site searching
ui/banned-words string, as comma separated list
Comma seperated list of words not allowed in page content - these values will be automatically stripped out
ui/default-auth-service int, available in PHP as $wgDefaultAuthServiceId
service_id of default authentication service (pre-selects the auth service when logging in)
ui/external-link-target string
link target for external links in content (default is "_blank")
ui/language string - available in PHP as $wgLanguageCode
Language to use for the user interface of the wiki in the format language-variant (example: en-us for English or de-de for German)
ui/comment-count integer - available in PHP as $wgCommentCount
The number of comments to show on first page.  Setting to 0 will hide comments
ui/custom/css string - available in PHP as $wgCustomCss
CSS styles that define the template's styles (not used for loading the editor)
ui/custom/bodycss string - available in PHP as $wgCustomBodyCss
CSS styles that define the content's body styles (used for viewing & editing)
ui/dynamic-nav string - available in PHP as $wgNavPaneEnabled
Enable dynamic behavior of navigation pane
ui/logo-uri string - available in PHP as $wgLogo
Path to site logo
ui/nav-max-itemsinteger
Max number of items to show in the navigation pane. The value 0 means show all items.
ui/nav-type string
Style of navigaion pane.  By default, the compact nav pane is displayed.  As of 10.0 (Olympic), an admin can also chose to use the expandable nav pane.  However, the latter is not yet officially supported.  Possible values for this configuration key are: compact (default), expandable, or none (suppressess the nav pane in php).
ui/sitename string - available in PHP as $wgSitename
Site title
ui/skin string - available in PHP as $wgActiveSkin
Name of template skin to use
ui/template string - available in PHP as $wgActiveTemplate
Name of template to use
ui/toc-max-heading int
Maximum heading depth to show in table of contents
ui/use-cdn string - available in PHP as $wgUseCDN
Enabling will use Yahoo!'s CDN to speed up delivery of Javascript files - this may not work depending on your ability to access Yahoo!'s servers.

mindtouch.deki.startup.xml

<script>
    <!-- register Deki services -->
    <action verb="POST" path="/host/load?name=mindtouch.deki" />
    <action verb="POST" path="/host/load?name=mindtouch.deki.services" />
    <action verb="POST" path="/host/load?name=mindtouch.indexservice" />

    <!-- start Deki services -->
    <action verb="POST" path="/host/services">
        <config>
        
            <!-- Service startup -->
            <!-- deki: relative path for deki-api service. I.e., http://host/deki -->
            <!-- sid: the serviceid points to a class that represents the service for startup-->
            <path>deki</path>
            <sid>http://services.mindtouch.com/deki/draft/2006/11/dekiwiki</sid>
            
            <!-- Global settings -->
            <!-- deki-path: full path to dekiwiki php (pointed to by web server) -->
            <!-- imagemagick-ignore-list: comma separated list of file extensions to bypass image preview -->
            <!-- imagemagick-convert-path: full path to imagemagick convert (used to generate image previews) -->
            <!-- imagemagick-identify-path: full path to imagemagick identify (used to determine image dimensions) -->
            <!-- deki-resources-path: path to deki-wiki resources directory containing txt files with localized strings. 
              Resource files are searched in the order "resources.custom.txt" -> "resources-[language]-[culture].txt" -> "resources-[language].txt" -> "resources.txt" 
              where [language] and [culture] are standard two letter abbreviations such as en-us -->
            <!-- dblogging-conn-string: DB connection string for detailed logging of deki-api requests/responses. Comment out to disable this logging -->
            <deki-path>/var/www/deki-hayes</deki-path>
            <imagemagick-convert-path>/usr/bin/convert</imagemagick-convert-path>
            <imagemagick-identify-path>/usr/bin/identify</imagemagick-identify-path>
            <deki-resources-path>/var/www/mks-wiki/resources</deki-resources-path>
            <!-- dblogging-conn-string>Server=localhost;Port=3306;Database=wikidb;Uid=wikiuser;Pwd=password;pooling=true; Connection Timeout=5; Protocol=sockets; Min Pool Size=1; Max Pool Size=100; Connection Reset=false;character set=utf8;ProcedureCacheSize=25;Use Procedure Bodies=true;</dblogging-conn-string -->
            
            <!-- number of seconds changes are accumulated before gathered into a notification email. Default is 10 minutes -->
            <page-subscription>
                <accumulation-time>600</accumulation-time>
            </page-subscription>

            <!-- optional Package Update service configuration -->
            <packageupdater>
                <!-- by default this is set to '{deki-path}/packages/default'
                    If $1 is used in the path, it is replaced with the wiki @id' -->
                <package-path>{absolute path to packages}</package-path>
            </packageupdater>

            <!-- Per instance and multi-instance settings -->
            <wikis>
                <config id="default">
                    <host>{canonical host name}</host>
                    <host>{alt host name 1}</host>
                    <host>{alt host name n}</host>
                    <!-- db-server: hostname/ip of database for this instance-->
                    <!-- db-port: db port (default 3306 for mysql)-->
                    <!-- db-catalog: catalog or database name for this instance -->
                    <!-- db-user: db account to use. Ensure full access to the catalog and rights to exec stored procs.-->
                    <!-- db-password: password for db account-->
                    <!-- db-options: other connection string settings. Ensure db connection pooling is enabled and that the connection supports utf8 encoding-->
                    <db-server>dbhostname</db-server>
                    <db-port>3306</db-port>
                    <db-catalog>wikidb</db-catalog>
                    <db-user>wikiuser</db-user>
                    <db-password hidden="true">password</db-password>
                    <db-options>pooling=true; Connection Timeout=5; Protocol=socket; Min Pool Size=2; Max Pool Size=50; Connection Reset=false;character set=utf8;ProcedureCacheSize=25;Use Procedure Bodies=true;</db-options>
                </config>
                
                <!-- Add more <config> sections to enable multiple wikis to be hosted by one Deki service -->
                <!--config id="foowiki">
                    <host>foo</host> 
                    <host>foowiki</host>
                    <host>foowiki.hostname.com</host>
                    
                    <db-server>dbhostname</db-server>
                    <db-port>3306</db-port>
                    <db-catalog>foowiki</db-catalog>
                    <db-user>foowikiuser</db-user>
                    <db-password hidden="true">password</db-password>
                    <db-options>pooling=true; Connection Timeout=5; Protocol=socket; Min Pool Size=2; Max Pool Size=50; Connection Reset=false;character set=utf8;ProcedureCacheSize=25;Use Procedure Bodies=true;</db-options>
                 </config-->
            </wikis>
            
            <!-- Definition for indexing file types -->
            <indexer>
                <filter-timeout>30</filter-timeout>
                <path.store>/usr/local/var/luceneindex/$1</path.store>
                <filter-path extension="doc">/opt/deki/bin/filters/wvText</filter-path>
                <filter-path extension="pdf">/opt/deki/bin/filters/pdf2text</filter-path>
                <filter-path extension="xhtml">/opt/deki/bin/filters/html2text</filter-path>
                <filter-path extension="html">/opt/deki/bin/filters/html2text</filter-path>
                <filter-path extension="htm">/opt/deki/bin/filters/html2text</filter-path>
                <filter-path extension="docx">/opt/deki/bin/filters/docx2txt</filter-path>
                <filter-path extension="odt">/opt/deki/bin/filters/odt2txt</filter-path>
                <filter-path extension="odp">/opt/deki/bin/filters/odp2txt</filter-path>
                <filter-path extension="ppt">/opt/deki/bin/filters/ppt2txt</filter-path>
                <filter-path extension="pptx">/opt/deki/bin/filters/pptx2txt</filter-path>
                <filter-path extension="xls">/opt/deki/bin/filters/xls2txt</filter-path>
                <filter-path extension="pl" />
                <filter-path extension="c" />
                <filter-path extension="h" />
                <filter-path extension="inc" />
                <filter-path extension="php" />
                <filter-path extension="cs" />
                <filter-path extension="txt" />
                <filter-path extension="csv" />
                <filter-path extension="xml" />
                <filter-path extension="xsl" />
                <filter-path extension="xslt" />
            </indexer>
            
            <!-- DekiScript settings -->
            <scripting>

                <!-- Max. accepted response length for web.* functions (added in 9.08.1) -->
                <max-web-response-length>524288</max-web-response-length>

                <!-- Min. period that items will be cached by web.* functions (added in 9.08.1) -->
                <min-web-cache-ttl>300</min-web-cache-ttl>
            </scripting>
        </config>
    </action>
</script>

Lucene Search Index Settings

filter-timeout
Maximum time in seconds that indexer waits for the filter process to convert a document to text
instance-ttl
Time in seconds that an idle indexer waits before shutting down
accumulation-time
Time in seconds a document is held, waiting for additional changes to the same document before being indexed
score-threshold
Minimum score a search result item must have to be returned by the compact search result feature
indexer-parallelism
Maximum parallel threads used to index documents
indexer-retry
Number of times to try indexing a document in case of failure
allow-leading-wildcard
Allows lucene queries to have leading wildcards for terms (warning: can be very slow)
filter-path
Path for filter program to use for @extension document
path.store
Path to the directory where the index should be stored. Must include $1, which will be replaced by the search instance name
path.queue
Path to the directory where the processing queue should be stored. Must include $1, which will be replaced by the search instance name. If omitted path.store with "-queue" appended is used.
namespace-whitelist
Comma separated list of namespaces to include in indexing
namespace-boost/namespace
Override per namespace index storage boost
 
Was this page helpful?
Tag page
Viewing 6 of 6 comments: view all
Line 34 seems to be incorrect as this creates 2 "config" start tags. My XML Notepad complains if it is there and doesn't if it is not. I think line 34 should be removed.

34 # <config>
35 # <config id="default">
Posted 06:36, 12 Oct 2007
Thanks for catching that typo scooter!
Posted 11:01, 10 Dec 2007
Is there any documentation for all the elements for the startup.xml file. I see the defaults here but in the FAQs there is a description of <preview-length>4096</preview-length> which is part of the <indexer> section but it is not here. Just looking for a full list of the features.
Posted 08:06, 31 Aug 2009
@coreyg - What about a parameter to select by default which kind of search it's done via Search Box ( All Pages, Main Pages, My User Pages )
Posted 03:48, 20 Jul 2010
@carles.coll That sounds like a good variable to add. I see that you already have a forum post going about this. I recommend filing a feature request for it in bugs.
Posted 21:42, 22 Jul 2010
@coreyg - Done: http://bugs.developer.mindtouch.com/view.php?id=8487
Posted 23:43, 22 Jul 2010
Viewing 6 of 6 comments: view all
You must login to post a comment.

Copyright © 2011 MindTouch, Inc. Powered by