Fedora Core 6

Table of contents
No headers

Install guide for Deki Wiki Hayes on Fedora Core 6

wget ftp://www.go-mono.com/archive/1.2.4/linux-installer/6/mono-1.2.4_6-installer.bin
chmod +x ./mono-1.2.4_6-installer.bin
sudo ./mono-1.2.4_6-installer.bin 

The installer will add /opt/mono-1.2.4/bin to your path.  You may need to logout/login to get the new $PATH applied.

Verify that mono-1.2.4 is installed by:

mono --version

Install requires packages

yum update
yum install httpd mysql-server php php-pear php-mysql php-gd php-curl php-mbstring ImageMagick wv links pdftohtml mysql-client
pear install Cache_Lite

Start services

/etc/init.d/mysqld start
/etc/init.d/httpd start
/sbin/chkconfig --level 35 httpd on
sudo /sbin/chkconfig --level 35 mysqld on
mysql -u root -e "set password = password('mysql_root_password');"

create /var/www/.wapi for mono

mkdir /var/www/.wapi
chown apache /var/www/.wapi

Edit /etc/php.ini and change the following parameters

memory_limit = 128M
post_max_size = 64M
upload_max_filesize = 64M

Change the shell for the apache user.  Edit /etc/passwd and change this:

apache:x:48:48:Apache:/var/www:/sbin/nologin

to:

apache:x:48:48:Apache:/var/www:/bin/bash 

 Dowload and install the latest Deki Wiki Hayes source

wget http://downloads.sourceforge.net/dekiwiki/Deki_Wiki_1.8.1b_Hayes_source.tar.gz
tar xfvz Deki_Wiki_1.8.1b_Hayes_source.tar.gz 
cd Deki_Wiki_1.8.1b_Hayes_source
sudo mkdir /var/www/deki-hayes
cd Deki_Wiki_1.8.1b_Hayes_source
cp -r web/* /var/www/deki-hayes/

Edit the config/dekihost init script. This script can be used to test the status of deki-api or start/stop the mindtouch.host.sh (deki-api) process.  Change the following values to match your configuration:

# path to your wiki
DEKI_PATH=/var/www/deki-hayes

# this should match your Apache ServerName directive
DEKI_SERVERNAME=deki-hayes

Then change the start() and stop() functions so they look like this:

start(){
        su apache $DEKI_PATH/bin/mindtouch.host.sh start
}
stop(){
	su apache $DEKI_PATH/bin/mindtouch.host.sh stop
}

Copy the init script

cp config/dekihost /etc/init.d/

Create a symlink to the dekihost init script in the appropriate runlevel

ln -s /etc/init.d/dekihost /etc/rc3.d/S86dekihost 
ln -s /etc/init.d/dekihost /etc/rc5.d/S86dekihost  

Create the deki-api logfile

touch /var/log/deki-api.log
chown apache /var/log/deki-api.log

Now configure Apache to serve up the wiki. Modify /etc/httpd/conf/httpd.conf (or wherever your virtual servers are configured) to include:

NameVirtualHost *:80
#
# NOTE: NameVirtualHost cannot be used without a port specifier
# (e.g. :80) if mod_ssl is being used, due to the nature of the
# SSL protocol.
#

#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for requests without a known
# server name.
#
<VirtualHost *:80>
        ServerName deki-hayes

        DocumentRoot "/var/www/deki-hayes"

	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} !/(redirect|texvc|index|Version).php
        RewriteCond %{REQUEST_URI} !/error/(40(1|3|4)|500).html
        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

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

</VirtualHost> 

restart apache

/usr/sbin/apachectl restart 

change ownership of /var/www/deki-hayes

chown -R apache /var/www/deki-hayes

Allow apache user to create the lucene index in /usr/local/var/

chown apache /usr/local/var  

Now run the web installer and follow the instructions.  After running the installer, it's necessary to change the following file (to point to the correct path for mono)

Edit:  /var/www/deki-hayes/bin/mindtouch.host.sh

add the following directly under the #!/bin/bash line

export PATH=/opt/mono-1.2.4/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin 

Now restart dekihost

/etc/init.d/dekihost restart

You should now be able to access your wiki in a web browser.

Tag page
Viewing 1 of 1 comments: view all
If you did not load the IPv6 stack, you'll need to modify your etc hosts file to point to 127.0.0.1 or you'll get errors that make it look like your mono backend is down when in fact, your server is trying to get to ::1 (the IPv6 address).
Posted 12:27, 14 Feb 2008
Viewing 1 of 1 comments: view all
You must login to post a comment.