Installation notes for running DekiWiki on Fedora Core 4. Refer to the main installation guide for troubleshooting.
First you need to install the various prerequisites for DekiWiki:
Download the mono repository (mono.repo) and add it to yum by copying it to /etc/yum.repos.d/mono.repo
wget http://www.go-mono.com/download-stable/fedora-4-i386/mono.repo mv mono.repo /etc/yum.repos.d
Import all the GPG keys
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*
Update yum and install
yum update yum install httpd mysql-server php php-pear php-mysql php-gd ImageMagick wv pdftohtml htmldoc links mono mono-data bytefx-data-mysql mono-data-sqlite aspell-en
Missing packages: html2text or htmltotext
You can download it here: http://www.mbayer.de/html2text/files.shtml
Make a RPM packaged by using the .spec file (A guide is located in the INSTALL file). Remember the rpm build command is now "rpmbuild" ex. rpmbuild -bb <.spec file>
pear install Cache_Lite XML_RPC
Decide on a password for MySQL (in this example "mysql_root_password")
/etc/init.d/mysqld start
/etc/init.d/httpd start
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
Next you'll download the DekiWiki codebase and configure the installers for your server.
Download the dekiwiki codebase & extract it to a directory called dekiwiki-current:
wget http://www.opengarden.org/download/dekiwiki-current.tar.gz tar xfvz dekiwiki-current.tar.gz
cd dekiwiki-current/mwsearch make install cp http://mwsearch.conf.mks/ /etc/mwsearch.conf mkdir /var/run/mwsearch cp mwlucene /etc/init.d/mwlucene chmod +x /etc/init.d/mwlucene ln -s /etc/init.d/mwlucene /etc/rc3.d/S86mwlucene
Edit /etc/mwsearch.conf and set password=mysql_root_password
Edit /etc/php.ini and change the following parameters
memory_limit = 128MB post_max_size = 64MB upload_max_filesize = 64MB
Edit installWiki.sh and set APACHE_USER=apache
Here you'll create a wiki instance. You'll follow these steps multiple times if you want multiple wikis on your server.
Change to the DekiWiki install directory (e.g. cd dekiwiki-current). Assuming you want your wiki on the deki.example.org domain name, run
./installWiki.sh --wikiName deki --domainName example.org --dbRootPwd mysql_root_password
Remember that the wikiName is the host and that you should use your top level domain (example.org) for the domainName.
NOTE: If your wiki name is too long (15+ chars or so) the installation may fail due to the generated MySQL user name being too long. Otherwise, you may get some PHP warnings but the install will be successful. Your wiki domain name, sysop password, and wiki database password will be displayed. The wiki database name is the same as the wikiName.
If you have multiple wikis on one machine, edit /etc/mwsearch.conf and make sure that all the wiki names are listed up top for the "databases" setting. Also make sure all the attachment directories at listed for the attachmentpaths setting.
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>
ServerAdmin webmaster@deki.example.org
DocumentRoot /var/www/deki.example.org
ServerName deki.example.org
ErrorLog logs/deki.example.org-error_log
CustomLog logs/deki.example.org-access_log common
RewriteEngine on
RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^/$ /index.php?title=Home [L,NE]
RewriteCond %{REQUEST_URI} !/(attachments|ControlPanel|editor|stylesheets|images|skins)/
RewriteCond %{REQUEST_URI} !/(redirect|texvc|index).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]
</VirtualHost> restart apache
apachectl restart