IMPORTANT NOTICE

This content is contributed by a Deki Wiki user to OpenGarden community. It has not been reviewed for technical accuracy by MindTouch. If you find an error or would like to comment on the article, please contact to contributor or use the comment field at the bottom of the document.

Fresh Install

Prerequisites for Installation

   

  • No Deki Wiki installed yet

    NOTE: This guide are not for update Deki Wiki, but for fresh installation only.

   

Download Deki Wiki 8.05 (Jay Cooke) Bits

Download Deki Wiki 8.05 (Jay Cooke) build from one of the following sources.

Then extract the archive to your home directory:

# cd $HOME
# wget http://jaist.dl.sourceforge.net/sourceforge/dekiwiki/Deki_Wiki_8.05_Jay_Cooke_source.tar.gz
# gtar xfz Deki_Wiki_8.05_Jay_Cooke_source.tar.gz
# cd Deki_Wiki_8.05_Jay_Cooke_source


Copy Deki Wiki web-files to your Apache "DocumentRoot" directory.

# mkdir -p /var/www/dekiwiki/
# cp -pir web/* /var/www/dekiwiki/
# chown -R webservd:webservd /var/www/dekiwiki/
  • NOTE: Apache2 package of Solaris 10 bundle are pre-configured to use "/var/apache2/htdocs" as DocumentRoot, but in this guide choose "/var/www/dekiwiki" as DocumentRoot, which are the same as for the Debian Linux.

OPTIONAL: If you intend to use Internet Explorer 6.0 browser, I recommend to do next ops to avoid link error for Deiki Wiki.

cd /var/www/dekiwiki/skins/
cp -pi common/icons/icon-lock.gif ace/neutral/icon_lock.gif
cp -pi common/icons/icon-mail.gif ace/neutral/icon_mail.gif
cp -pi common/icons/icon-file.gif ace/neutral/icon_file.gif
cp -pi common/icons/icon-discuss.gif ace/neutral/icon_discuss.gif
cp -pi common/icons/anim-save.gif ace/neutral/anim-save.gif

cp -pi common/icons/icon-lock.gif ace/blue/icon_lock.gif
cp -pi common/icons/icon-mail.gif ace/blue/icon_mail.gif
cp -pi common/icons/icon-file.gif ace/blue/icon_file.gif
cp -pi common/icons/icon-discuss.gif ace/blue/icon_discuss.gif
cp -pi common/icons/anim-save.gif ace/blue/anim-save.gif

   

Configure Apache server for Deki Wiki

Deki Wiki contains a Apache2 configuration file which named "deki-apache.conf".
In this guide, we follow a traditional way, so that, include "deki-apache.conf" into Apache2 bundled configuration file (httpd.conf).

Copy the "deki-apache.conf" file from source onto Apache configuration direcory.

# cd $HOME/Deki_Wiki_8.05_Jay_Cooke_source
# cp -pi ./config/deki-apache.conf /etc/apache2/deki-apache.conf.orig
# cp -pi ./config/deki-apache.conf /etc/apache2/deki-apache.conf


Edit and Change the "deki-apache.conf" file according to your setup:

  • ServerName :
    hostname (or FQDN) for a host
     
  • ServerAlias :
    sets the alternate names for a host, for use with name-based virtual hosts
     
  • ErrorLog :
    error reporting file for Apache server
     
  • CustomLog :
    access reporting file for Apache server
     
  • DocumentRoot :
    pathname of subdirectory which containing the Deki Wiki web files.
# vi /etc/apache2/deki-apache.conf
# diff /etc/apache2/deki-apache.conf.orig /etc/apache2/deki-apache.conf
2c2
<       ServerName dekiwiki
---
>       ServerName hostname.mydomain.com

   

Edit the ProxyPass definition to go hand in hand with Apache 2.0 syntax, if you use Apache 2.0 of bundled with Solaris 1.0.

 from:
ProxyPass /@api http://localhost:8081 retry=1

 to:
ProxyPass /@api http://localhost:8081

   

  • NOTE: This workarround was found at the forum:
      MindTouch OpenGarden.org Forums > MindTouch Deki Wiki  > General Technical Discussions  > Installation & Upgrades > Problems with CentOS Hayes Install
    http://forums.opengarden.org/showthread.php?t=469

To check configuration type:

# /usr/apache2/bin/apachectl configtest
Syntax OK


As a result, "deki-apache.conf" seems to like this.

# cat /etc/apache2/deki-apache.conf
<VirtualHost *>
	ServerName hostname.mydomain.com
        #ServerAlias 

	ErrorLog /var/log/apache2/error-dekiwiki.log 
	CustomLog /var/log/apache2/access-dekiwiki.log common

	DocumentRoot "/var/www/dekiwiki"

	RewriteEngine On
	RewriteCond %{REQUEST_URI} ^/$
	RewriteRule ^/$ /index.php?title= [L,NE]

	RewriteCond %{REQUEST_URI} ^/@gui/[^.]+$
	RewriteRule ^/@gui/(.*)$ /proxy.php?path=$1 [L,QSA,NE]

	RewriteCond %{REQUEST_URI} !^/(@api|editor|skins|config|@gui)/
	RewriteCond %{REQUEST_URI} !^/index\.php
	RewriteCond %{REQUEST_URI} !^/favicon\.ico$
	RewriteCond %{REQUEST_URI} !^/robots\.txt$
	RewriteCond %{QUERY_STRING} ^$ [OR] %{REQUEST_URI} ^/Special:Search
	RewriteRule ^/(.*)$ /index.php?title=$1 [L,QSA,NE]

	# deki-api uses encoded slashes in query parameters so AllowEncodedSlashes must be On
	AllowEncodedSlashes On   

	# FIXME:
	# Some php flags we need. These are only needed until all
        # the short php open tags are changed to long in the source code.
	php_flag short_open_tag on
	# Allow short open tags and turn off E_NOTICE messages
	php_value error_reporting "E_ALL & ~E_NOTICE"
	# Setting php memory parameters
	# php_value memory_limit "128M"
        # php_value post_max_size "64M"
        # php_value upload_max_filesize "64M"

	# mod_proxy rules
	ProxyPass /@api http://localhost:8081
	ProxyPassReverse /@api http://localhost:8081
	SetEnv force-proxy-request-1.0 1
	SetEnv proxy-nokeepalive 1

        <Proxy *>
          AddDefaultCharset off
          Order deny,allow
          Deny from all
          Allow from all
        </Proxy>
</VirtualHost>

<Directory "/var/www/dekiwiki">
        # Possible values for the Options directive are "None", "All",
        # or any combination of:
        #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
        #
        # Note that "MultiViews" must be named *explicitly* --- "Options All"
        # doesn't give it to you.
        #
        # The Options directive is both complicated and important.  Please see
        # http://httpd.apache.org/docs-2.2/mod/core.html#options
        # for more information.
        Options None
        # AllowOverride controls what directives may be placed in .htaccess files.
        # It can be "All", "None", or any combination of the keywords:
        #   Options FileInfo AuthConfig Limit
        AllowOverride All
        # Controls who can get stuff from this server.
        Order allow,deny
        Allow from all
</Directory>

   

Configure Apache Server for Deki API application

The Deki API (also known as MindTouch Dream) is a RESTfull application framework developed in Mono/.NET. The Deki API resident in main-memory as a background process, and interact through HTTP with Apache HTTP server. The "mod_proxy" module are loaded into Apache process, and is used to transfer requests from Apache to Deki API.

Edit the Apache root configration file to lnclude "deki-apache.conf" file, and enable Apache modules required by Deki Wiki.

# cp -pi /etc/apache2/httpd.conf /etc/apache2/httpd.conf.orig
# vi /etc/apache2/httpd.conf


(1) add next two lines to this file near end of the file.

# Deki Wiki settings
Include /etc/apache2/deki-apache.conf

(2) enable next three lines, if disabled

LoadModule proxy_module libexec/mod_proxy.so
LoadModule proxy_http_module libexec/mod_proxy_http.so
LoadModule rewrite_module libexec/mod_rewrite.so

(3) change DocumentRoot and the web root Directory to point directory Deki Wiki web files.

 from:
DocumentRoot "/var/apache2/htdocs"
 to:
DocumentRoot "/var/www/dekiwiki"

 from:
<Directory "/var/apache2/htdocs">
 to:
<Directory "/var/www/dekiwiki">

(4) Change ErrorLog and CustomLog as following

# ErrorLog /var/apache2/logs/error_log
ErrorLog /var/log/apache2/error-dekiwiki.log

# CustomLog /var/apache2/logs/access_log common
CustomLog /var/log/apache2/access-dekiwiki.log common

(5) Make Apache to parse extensions as PHP

# Tell Apache to parse certain extensions as PHP.
AddType application/x-httpd-php .php .phtml
# It's also common to setup the .phps extension to show highlighted
# source, this can be done with:
AddType application/x-httpd-php-source .phps

(6) Edit Listen directive to explicit addressing 

This is work around to avoid "Network is unreachable: connect to listener on [::]:80" error.
Please replace "192.168.1.2" with IP-address of your Solaris box.

 from:
Listen 80

 to:
Listen 192.168.1.2:80


(7) So that diffential between original file and edited file is:

# diff /etc/apache2/httpd.conf.orig /etc/apache2/httpd.conf
225c225
< Listen 80
---
> Listen 192.168.1.2:80
363c363,364
< DocumentRoot "/var/apache2/htdocs"
---
> # DocumentRoot "/var/apache2/htdocs"
> DocumentRoot "/var/www/dekiwiki"
388c389,390
< <Directory "/var/apache2/htdocs">
---
> # <Directory "/var/apache2/htdocs">
> <Directory "/var/www/dekiwiki">
530c532,533
< ErrorLog /var/apache2/logs/error_log
---
> # ErrorLog /var/apache2/logs/error_log
> ErrorLog /var/log/apache2/error-dekiwiki.log
558c561,562
< CustomLog /var/apache2/logs/access_log common
---
> # CustomLog /var/apache2/logs/access_log common
> CustomLog /var/log/apache2/access-dekiwiki.log common
893a898,903
> # Tell Apache to parse certain extensions as PHP.
> AddType application/x-httpd-php .php .phtml
> # It's also common to setup the .phps extension to show highlighted
> # source, this can be done with:
> AddType application/x-httpd-php-source .phps
>
1097a1108,1111
>
> # Deki Wiki settings
> Include /etc/apache2/deki-apache.conf
>

   

Restart Apache to take effect new settings

If Apache2 is running we need to stop the current Apache2 service.

# svcadm disable svc:/network/http:apache2

Create log directory. Then move existing log-file to new location, if you need.

# mkdir /var/log/apache2/
# mv -i /var/apache2/logs/error_log /var/log/apache2/error-dekiwiki.log
# mv -i /var/apache2/logs/access_log /var/log/apache2/access-dekiwiki.log

# svcadm enable svc:/network/http:apache2
# svcs -xv svc:/network/http:apache2
svc:/network/http:apache2 (Apache 2 HTTP server)
 State: online since Sun May 11 17:30:28 2008
   See: man -M /usr/apache2/man -s 8 httpd
   See: /var/svc/log/network-http:apache2.log
Impact: None.

At this time, Apache's error-log file should not report any errors.

# tail -f /var/log/apache2/error-dekiwiki.log
  (snip)
[Sun May 11 16:48:57 2008] [notice] caught SIGTERM, shutting down
[Sun May 11 17:30:29 2008] [notice] Digest: generating secret for digest authentication ...
[Sun May 11 17:30:29 2008] [notice] Digest: done
[Sun May 11 17:30:29 2008] [notice] Apache/2.0.63 (Unix) DAV/2 PHP/5.2.6 configured \
-- resuming normal operations
  • NOTE : To syntax check for Apache configuration file, use options of Apache server.
(1) to run syntax check for config files

# /usr/apache2/bin/httpd -t
Syntax OK

(2) to show parsed settings

# /usr/apache2/bin/httpd -S
VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
*:*                    hostname.mydomain.com (/etc/apache2/deki-apache.conf:1)
Syntax OK

   

Configure Deki API application

Create the Deki API logfile with null contents which writable to Apache user.

# mkdir /var/log/dekiwiki/
# touch /var/log/dekiwiki/deki-api.log
# chown webservd:webservd /var/log/dekiwiki/deki-api.log
# chmod 644 /var/log/dekiwiki/deki-api.log
# ls -la /var/log/dekiwiki/
total 4
drwxr-xr-x   2 root     root         512 May  5 01:20 .
drwxr-xr-x   7 root     sys          512 May  5 01:20 ..
-rw-r--r--   1 webservd webservd       0 May  5 01:20 deki-api.log

   

Create the Mono's ".wapi" directory, then change the owner to Apache user.

NOTE

  • The Mono ".wapi" directory needs to exist in the home directory for your Apache user. In this guide the "webservd" user's home directory is "/" (root directory).
  • Note that Apache user and home directory depend on Apache configuration.
# mkdir /.wapi
# chown webservd:webservd /.wapi
# ls -la /.wapi
total 6
drwxr-xr-x   2 webservd webservd     512 May  4 01:35 .
drwxr-xr-x  51 root     root        1536 May  4 22:06 ..

Copy and Edit the config/dekiwiki-init.debian init script. This script can be used to test the status of the Deki API or start/stop the "mindtouch.host.exe" (Deki API) process.

Change the following to match your configuration:

  • PATH :
    comented out, this variable are assigned in /.bash_profile script
     
  • setenv to run Mono :
    add ". /.bash_profile" line to configure environment variables to run Mono
     
  • DEKIWIKI_USER :
    effective user of Apache HTTP server, which described "User/Group" parameter in the /etc/apache2/httpd.conf file.
     
  • ps command :
    In Solaris "ps" command has argument(s) different from Linux
     
  • su command:
    In Solaris "su" command substitutable of the "start-stop-daemon" command on Linux
     
  • NOTE:
      On Solaris 10, name of the user "webservd" to run Apache httpd daemon as. The default settings of user "webservd" are: "/" as home-directory, "/bin/sh" as shell. Therefor "webservd" sharing dot-files like "/.bash_profile", "/.bashrc", "/.profile" with super-user ("root").
# cd $HOME/Deki_Wiki_8.05_Jay_Cooke_source/
# cp -pi config/dekiwiki-init.debian /etc/init.d/dekiwiki
# chown root:root /etc/init.d/dekiwiki
# chmod 744 /etc/init.d/dekiwiki
# ln -s /etc/init.d/dekiwiki /etc/rc3.d/S92dekiwiki
# ls -l /etc/rc3.d/S92dekiwiki /etc/init.d/dekiwiki
-rwxr--r--   1 root     root        2922 Mar 16 15:20 /etc/init.d/dekiwiki
lrwxrwxrwx   1 root     root          20 May  5 01:22 /etc/rc3.d/S92dekiwiki -> /etc/init.d/dekiwiki

# vi /etc/init.d/dekiwiki
# diff config/dekiwiki-init.debian /etc/init.d/dekiwiki
4c4
< PATH=/bin:/sbin:/usr/bin:/usr/sbin
---
> # PATH=/bin:/sbin:/usr/bin:/usr/sbin
5a6,8
> # setenv to run Mono
> . /.bash_profile
>
7c10,11
< DEKIWIKI_USER="www-data"
---
> # DEKIWIKI_USER="www-data"
> DEKIWIKI_USER="webservd"
71c75,77
<     echo $(ps -U $DEKIWIKI_USER -o pid,cmd | grep mindtouch.host.exe | grep $HTTP_PORT |awk '{print $1}')
---
>     # echo $(ps -U $DEKIWIKI_USER -o pid,cmd | grep mindtouch.host.exe | grep $HTTP_PORT |awk '{print $1}')
>     echo $(/bin/ps -f -u $DEKIWIKI_USER -o pid,args | \
>         grep mindtouch.host.exe | grep -v -- "-su -c" | awk '{print $1}')
109c115,116
<     start-stop-daemon --start --quiet --chuid $DEKIWIKI_USER --exec $MONO -- $MONO_ARGS 2>&1 >> $LOGFILE &
---
>     # start-stop-daemon --start --quiet --chuid $DEKIWIKI_USER --exec $MONO -- $MONO_ARGS 2>&1 >> $LOGFILE &
>     su - $DEKIWIKI_USER -c "$MONO $MONO_ARGS" 2>&1 >> $LOGFILE &

   

Then /etc/init.d/dekiwiki will be:
 

#!/bin/bash

prog="MindTouch Deki Host Service"
# PATH=/bin:/sbin:/usr/bin:/usr/sbin

# setenv to run Mono
. /.bash_profile

DEKIHOST_CONF="/etc/dekiwiki/mindtouch.host.conf"
# DEKIWIKI_USER="www-data"
DEKIWIKI_USER="webservd"

if [ ! -f $DEKIHOST_CONF ]; then
    echo "$DEKIHOST_CONF does not exist"
    exit 1
fi

. $DEKIHOST_CONF

# set default values if not specified in $DEKIHOST_CONF

if [ ! -f "$MONO" ]; then
    echo "Please specify the full path to your mono binary"
    exit 1
fi

if [ ! -d "$BIN_DIR" ]; then
    echo "Please specify the path to your DekiWiki bin directory"
    exit 1
fi

if [ -z "$APIKEY" ]; then
    echo "Please specify your APIKEY"
    exit 1
fi

if [ -z "$PATH_PREFIX" ]; then
    PATH_PREFIX="@api"
fi

if [ -z "$HTTP_PORT" ]; then
    HTTP_PORT="8081"
fi

if [ -z "$IP" ]; then
    IP="localhost"
fi

if [ -z "$HOST_EXE" ]; then
    HOST_EXE="$BIN_DIR/mindtouch.host.exe"
fi

if [ -z "$SCRIPT" ]; then
    SCRIPT="/etc/dekiwiki/mindtouch.deki.startup.xml"
fi

if [ -z "$NOTTY" ]; then
    NOTTY="notty"
fi

if [ -z "$CONNECT_LIMIT" ]; then
    CONNECT_LIMIT="-5"
fi

if [ -z "$LOGDIR" ]; then
    LOGDIR="/var/www/dekiwiki"
fi

if [ -z "$LOGFILE" ]; then
    LOGFILE="$LOGDIR/deki-api.log"
fi

pidof_dekiwiki() {
    # we grep on assembly name and port in case multiple mono processes are running
    # echo $(ps -U $DEKIWIKI_USER -o pid,cmd | grep mindtouch.host.exe | grep $HTTP_PORT |awk '{print $1}')
    echo $(/bin/ps -f -u $DEKIWIKI_USER -o pid,args | \
         grep mindtouch.host.exe | grep -v -- "-su -c" | awk '{print $1}')
}

stop() {
    PID=$(pidof_dekiwiki)
    echo -n "Stopping MindTouch Deki API: mindtouch.host.exe"
    if [ -z "$PID" ]; then
        echo 
        echo "dekiwiki is not running"
    else 

        # attempt to shut down gracefully using curl
        curl -m 10 -s -d "" "http://$IP:$HTTP_PORT/host/?apikey=$APIKEY&dream.in.verb=DELETE"
        sleep 3

        # if the host didn't shut down properly then kill it
        PID=$(pidof_dekiwiki)
        if [ -n "$PID" ]; then
            kill $PID
        fi
        echo .
    fi
}

start() {
    if [ ! -d $LOGDIR ]; then 
        mkdir $LOGDIR
        chown $DEKIWIKI_USER $LOGDIR
    fi

    PID=$(pidof_dekiwiki)
    if [ -n "$PID" ]; then
        echo "dekiwiki is already running: $PID"
        exit 1;
    fi
    # see if the process is already running
    MONO_ARGS="$HOST_EXE apikey $APIKEY script $SCRIPT path-prefix $PATH_PREFIX http-port $HTTP_PORT \
ip $IP connect-limit $CONNECT_LIMIT $NOTTY"
    echo -n "Starting MindTouch Deki API: mindtouch.host.exe"
    # start-stop-daemon --start --quiet --chuid $DEKIWIKI_USER --exec $MONO -- $MONO_ARGS 2>&1 >> $LOGFILE &
    su - $DEKIWIKI_USER -c "$MONO $MONO_ARGS" 2>&1 >> $LOGFILE &
    echo .
}


case "$1" in
  start)
    start
    ;;
  stop)
    stop
    ;;
  status)
    PID=$(pidof_dekiwiki)
    if [ -n "$PID" ]; then
        echo "dekiwiki is running: $PID"
    else
        echo "dekiwiki is stopped"
    fi
    ;;
  restart|force-reload)
    stop
    start
    ;;
  force-reload)
    stop
    start
    ;;
  *)
    echo "Usage: $0 {start|stop|force-reload|restart|status}"
    exit 1
esac

exit 0

   

Setup Lucene Index

Create a empty folder to store search index file.

# mkdir -p /var/www/dekiwiki/bin/cache/luceneindex/
# chown -R webservd:webservd /var/www/dekiwiki/bin/cache/luceneindex/
# chmod -R 775 /var/www/dekiwiki/bin/cache/luceneindex/

   

Deki Wiki site configuration using the web-installer

Launch a browser and go to the web-installer:

http://<hostname>/config/index.php

"Deki Wiki Installation" page will be shown in your browser. Environmental checking carry out. Enter required information for Deki Wiki as below:

Deki Wiki Installation

Checking environment...

If you run into installation problems, please include the following lines.

Environment checked. You can install Deki Wiki.


All fields are required, unless otherwise noted.

Deki Wiki Setup
Site localization: English - United States
Site name: Deki Wiki
System e-mail: your e-mail
  Emails, such as password reminders, will be sent from this email address. 

Deki Wiki Administrator Account Setup
Admin username:  Admin
Admin password:  *****
Confirm password:  *****
Admin e-mail:  your e-mail
Your Name:  (optional) 
Your Phone:  (optional) 
Country: None
[X] Receive updates and notifications from MindTouch about Deki Wiki 

Database Configuration
Database host:  localhost
  If your database server isn't on your web server, enter the name or IP address here. 
Database name:  wikidb
  The database must not exist. 
Database user:  wikiuser
  The database user must not exist. 

Existing MySQL credentials
In order to complete the Deki Wiki installation, we require a MySQL user
 who can create database, stored procedures, and MySQL users. Usually this user is root.

Superuser name:  root
Superuser password:  ****

Advanced Configuration
Deki Wiki API Key:  ********************************
ImageMagick convert:  /usr/sfw/bin/convert
  The path to the ImageMagick convert binary 
ImageMagick identify:  /usr/sfw/bin/identify
  The path to the ImageMagick identify binary 
Mono:  /opt/mono/bin/mono
  The path to the mono binary 
html2ps:  /opt/sfw/bin/html2ps
  The path to the html2ps binary 
ps2pdf:  /usr/sfw/bin/ps2pdf
  The path to the ps2pdf binary 

[Install Deki Wiki!]

   

OK !

Fill in the required information and click "Install Deki Wiki !"

Deki Wiki Installation 

Checking environment...
If you run into installation problems, please include the following lines.

Environment checked. You can install Deki Wiki.


Performing installation...
Success: Connected to installation database.
Success: Created database wikidb.
Granting user permissions to wikiuser on wikidb...done.
Creating stored procedures...done.
Creating tables...done.
Success: Created Deki Wiki administrator account admin
Success: Generated API key and stored it in database.
Success: Site language set to en-us.
Success: Saved attachments path as /var/www/dekiwiki/attachments
Success: Set your Deki Wiki site name as Deki Wiki
Success: Wrote LocalSettings.php to disk successfully.
Success: Wrote mindtouch.deki.startup.xml to disk successfully.
Success: Wrote mindtouch.host.conf to disk successfully.

Installation successful!


But wait, you're not done yet!
Please run the following commands manually from the command line to complete your installation:

cd /var/www/dekiwiki/config
mkdir /etc/dekiwiki
cp -p mindtouch.host.conf /etc/dekiwiki
cp -p mindtouch.deki.startup.xml /etc/dekiwiki
cp -p LocalSettings.php /var/www/dekiwiki/
/etc/init.d/dekiwiki start


Additionally, you might want to clean up your configuration files:

cd /var/www/dekiwiki
rm config/mindtouch.host.conf
rm config/mindtouch.deki.startup.xml
rm config/LocalSettings.php

Visit your Deki Wiki! (http://<hostname>/index.php)

Subscribe to the MindTouch Deki Wiki updates and notifications mailing list.

   

Complete the installation by running the additional commands as instructed by the installer.

Install derived files into suitable directory.

   

cd /var/www/dekiwiki/config/
mkdir /etc/dekiwiki
chown webservd:webservd /etc/dekiwiki
chmod 755 /etc/dekiwiki

cp -pi mindtouch.host.conf /etc/dekiwiki/
cp -pi mindtouch.deki.startup.xml /etc/dekiwiki/
cp -pi LocalSettings.php /var/www/dekiwiki/

chmod 644 /etc/dekiwiki/mindtouch.host.conf
chmod 644 /etc/dekiwiki/mindtouch.deki.startup.xml
chmod 644 /var/www/dekiwiki/LocalSettings.php

   

Start the Deki API daemon.

# /etc/rc3.d/S92dekiwiki start
Starting MindTouch Deki API: mindtouch.host.exe.

# /etc/rc3.d/S92dekiwiki status
dekiwiki is running: 1238 1242

# ps -ef | grep mono
webservd  1713     1   0 17:58:36 pts/2       0:00 -sh -c /opt/mono/bin/mono \
/var/www/dekiwiki/bin/mindtouch.host.exe apikey xouks
webservd  1717  1713   8 17:58:36 pts/2       0:05 /opt/mono/bin/mono \
/var/www/dekiwiki/bin/mindtouch.host.exe apikey xoukssTuw4ri
    root  1726   944   0 17:58:48 pts/2       0:00 grep mono

# ls -l /var/log/dekiwiki/deki-api.log
-rw-r--r--   1 webservd webservd     387 May 11 17:58 /var/log/dekiwiki/deki-api.log

   

Deki API's Log file are:

# tail -f /var/log/dekiwiki/deki-api.log
Sun Microsystems Inc.   SunOS 5.10      Generic January 2005
-------------------- initializing
-------------------- initialized 1.618094 secs
-------------------- ready 1.947297 secs
(press [ctrl]+[c] to terminate)

At this point you can talk to the deki-api daemon via the HTTP request.

Deki API daemon test can perform following command line.

# curl -i http://localhost:8081/deki/@about
HTTP/1.1 200 OK
Server: Dream-HTTPAPI/1.5.2.25904
Content-Type: text/html; charset=utf-8
Date: Sun, 11 May 2008 08:59:42 GMT
Content-Length: 54926
Connection: close

<html xmlns="http://www.w3.org/1999/xhtml"><head><title>MindTouch Deki Wiki Service</title>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
  (snip long HTML code)
</body></html>

   

Verification Deki Wiki

Verify your new Deki Wiki 8.05 (Jay Cooke) installation by launching a browser and going to the following URI:

http://<hostname>/index.php

   

APPENDIX

(Appendix) Known issue of Deki Wiki 8.0.5 (Jay Cooke) on Solaris 10

  • [Printing] PDF conversion does not work  (I have no identifiable cause of this issue yet)

(Appendix) Basic file layout of Deki Wiki 8.05 (Jay Cooke)

/.bash_profile - personal initialization file for bash (shared by root and webservd)
/.wgetrc - personal initialization file for wget
/etc
	/apache2
		deki-apache.conf - Apache config file for Deki Wiki
		httpd.conf - Apache "main" config file (includes deki-apache.conf)
		php.ini - configuration for PHP5
	/dekiwiki
		mindtouch.deki.startup.xml - Deki API server configuration file
		mindtouch.host.conf - Deki API server configuration file, which called in /etc/init.d/dekiwiki
	/init.d
		dekiwiki - startup for Deki API
		mysql.server - startup for MySQL
	my.cnf - configuration file for MySQL server
	/rc3.d
		S91mysql -> /etc/init.d/mysql.server - startup for MySQL server
		S92dekihost -> /etc/init.d/dekiwiki - startup for Deki API
/usr
	/apache2
		/bin
			httpd - Apache 2.0 HTTP server
	/sfw
		/bin
			wget - network utility to retrieve files from the Web
			curl - transferring files with URL syntax
/opt
	/mono
		/bin
			mono - .NET runtime
			gmcs - C# compiler
	/mysql
		/bin
			mysql - the MySQL command-line tool
			mysqladmin- client for administering a MySQL server
	/php5
		/bin
			php - PHP Command Line Interface 'CLI'
/var
	/apache2
		/htdocs - DocumentRoot of Apache2 original (Not used)
	/log
		/apache2
			access-dekiwiki.log - Apache access log file
			error-dekiwiki.log - Apache error log file
		/dekiwiki
			deki-api.log - Deki API log file
	/www
		/dekiwiki - DocumentRoot for the Deki Wiki 
			/bin
				/cache
					/luceneindex - Lucene index directory
				mindtouch.host.exe - Deki APIdaemon executable
				mindtouch.host.exe.config
			LocalSettings.php
/.wapi - Mono shared directory

     

(Appendix) Upgrading 8.05 to 8.05.2b

Here are an upgrade-guide available.

Tag page
Viewing 1 of 1 comments: view all
Hello yasuaki,

I have a question. First of all I am new to this sofware and I recently downloaded the source code for 8.05.2b and I plan to install it on Solaris. Can I use the install guide posted here "SPARC Solaris 10 (Deki Wiki 8.05 (Jay Cooke))" Or will there be additional steps since I am installing 8.05.2b?

Please email me at nick.conrad@va.gov

Thanks,
Nick Conrad
Posted 20:38, 18 Aug 2008
Viewing 1 of 1 comments: view all
You must login to post a comment.