Configuration

Overview

Configuration of the DekiWiki 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 Deki Wiki service and setup the environment while the 'config' table holds options that can generally be set via the control panel (/Admin:Config). Both are described here.

 

Deki Wiki Settings

Configuration Key Default Value Changelog
admin/email   1.8.2
admin/contact-threshold 1 1.8.2
cache/roles false 1.8.2
cache/services false 1.8.2
cache/users false 1.8.2
cache/bans false 8.05.1
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
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
files/blocked-extensions exe, vbs, scr, reg, bat, com 1.8.1
files/imagemagick-extensions bmp, jpg, jpeg, png, gif 1.8.1
files/imagemagick-max-size 2000000 1.8.1
files/max-file-size 268435456 1.8.1
gravatar/default

8.05.2
gravatar/rating
g
8.05.2
gravatar/size
80
8.05.2
languages   8.05
mail/smtp-servers   1.8.3
mail/smtp-username   1.8.3
mail/smtp-password   1.8.3
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 false 8.05.1
security/trusted-auth-provider-id   8.05.1
security/homepage-grant-role   8.05.2
security/admin-user-for-impersonation sysop or admin 8.05.2
site/search-disabled false 1.8.1
stats/page-hit-counter true 8.05.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/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/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/sitename DekiWiki (1.81) 1.8.1
ui/skin neutral 1.8.1
ui/template ace 1.8.1
ui/use-cdn false 1.8.1d
ui/logo-maxwidth 280 N/A
ui/logo-maxheight 72 N/A

Setting Descriptions

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/roles bool
Enable caching of permission roles to reduce database calls. (default: false)
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
Content to be displayed on New User Page, an example value would be "Template:UserProfile". If none provided, system inserts the default text:  
{{wiki.localize('System.API.new-user-page-text')}}
editor/safe-html boolean
Whether or not to remove potentially unsafe html tags
files/blocked-extensions string, as comma separated list
Unallowed extensions as file attachments
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/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
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.
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-serversstring - available in PHP as $wgSMTPServers
SMTP servers; separate multiple servers with semicolons
mail/smtp-usernamestring - available in PHP as $wgSMTPUser
SMTP authentication username
mail/smtp-passwordstring - available in PHP as $wgSMTPPwd
SMTP authentication password 
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-authinteger
Set to true to enable trusted authentication.
security/trusted-auth-provider-id integer
If trusted authentication is enabled, set to the numeric id of the auth provider under which users will be created and verified. Set to 1 to create local accounts.
security/homepage-grant-rolestring
If provided, a grant with this role is given to the user on their homepage. This allows viewers or users with no global access to edit their user pages.
security/admin-user-for-impersonationstring
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.
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)
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/typestring
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/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
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
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/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 -->
               
      <!-- Per instance and multi-instance settings -->
	<wikis>
 	 <config id="default">
          	<host>*</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>

 	<indexer>
        	<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>
        	<filter-path extension="c"></filter-path>
        	<filter-path extension="h"></filter-path>
        	<filter-path extension="inc"></filter-path>
        	<filter-path extension="php"></filter-path>
        	<filter-path extension="cs"></filter-path>
        	<filter-path extension="txt"></filter-path>
        	<filter-path extension="csv"></filter-path>
        	<filter-path extension="xml"></filter-path>
        	<filter-path extension="xsl"></filter-path>
        	<filter-path extension="xslt"></filter-path>
 	</indexer>

    </config>
  </action>
</script>

 

Tag page
Viewing 2 of 2 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 14:36, 12 Oct 2007
Thanks for catching that typo scooter!
Posted 19:01, 10 Dec 2007
Viewing 2 of 2 comments: view all
You must login to post a comment.
Powered by MindTouch Deki Enterprise Edition v.8.08 RC2