owncould on Hiawatha

Mainly for future reference here is a short summary of what to do for setting up owncloud on Debian with the (awesome) Hiawatha webserver instead of Apache. This is work in progress, since some adjustments needed to be made to Hiawatha and the new version is just a beta. So far everything is working quite nice, except the mirall syncing client, which connects, but doesnt sync.

/*setting up the testserver */
# dpkg-reconfigure tzdata
/* seems like the mirall client doesnt like to sync across timezones */
# vi /etc/apt/sources.list
      deb http://ftp.de.debian.org/debian/ squeeze main
      deb http://security.debian.org/ squeeze/updates main
      deb http://ftp.de.debian.org/debian/ squeeze-proposed-updates main
          # hiawatha from source needs newer cmake than provided by squeeze
      deb http://backports.debian.org/debian-backports squeeze-backports main
# apt-get update
# apt-get purge apache2* bind9 sendmail samba xinetd
/* although installing Debian minimal I tend to find stuff I dont want on the vserver */
# apt-get install nano rcconf elinks
/* replace standard editor, optional; gui for runlevel config */
# apt-get dist-upgrade

tl,dr: apt-get update && apt-get install nano rcconf elinks && apt-get purge apache2* bind9 sendmail samba xinetd && apt-get dist-upgrade
/* setting up hiawatha from source */
# cd /tmp
# apt-get install -t squeeze-backports cmake
# apt-get install gcc libc6-dev dpkg-dev debhelper fakeroot libxml2-dev libxslt1-dev zlib1g-dev
# wget http://www.leisink.org/hiawatha-8.2.tar.gz
# tar xfv hiawatha-8.2.tar.gz
# sh ./hiawatha-8.2/extra/make_debian_package
# dpkg -i hiawatha-8.2/hiawatha_8.2_i386.deb
tl,dr: cd /tmp && apt-get install -t squeeze-backports cmake && apt-get install gcc libc6-dev dpkg-dev debhelper fakeroot libxml2-dev libxslt1-dev zlib1g-dev && wget http://www.leisink.org/hiawatha-8.2.tar.gz && tar xfv hiawatha-8.2.tar.gz && sh ./hiawatha-8.2/extra/make_debian_package &&  dpkg -i hiawatha-8.2/hiawatha_8.2_i386.deb
/* configuring hiawatha */
# apt-get install php5-cgi fcgiwrap
# nano /etc/hiawatha/hiawatha.conf
    /* only changed lines listed */
    ServerId = www-data
    Binding {
      MaxRequestSize = 1000000 #replaces upload_max_filesize in .htaccess
    }
    CGIhandler = /usr/bin/php-cgi:php
    FastCGIserver {
          FastCGIid = PHP5
          ConnectTo = 127.0.0.1:2005
          Extension = php
    }
    VirtualHost     {
          Hostname = owncloud.example.org
          WebsiteRoot = /var/www/owncloud
          StartFile = index.php
          AccessLogfile = /var/log/hiawatha/oc.access.log
          ErrorLogfile = /var/log/hiawatha/oc.error.log
          ExecuteCGI = yes
          WebDAVapp = yes
          ErrorHandler = 404:/core/templates/404.php
TimeForCGI = 864000 #prevents download timeout

}

    Directory {
          Path = /var/www/owncloud/data
          AccessList = deny all
          ShowIndex = no
    }
# nano /etc/hiawatha/php-fcgi.conf
    /* only changed lines listed */
    Server = /usr/bin/php5-cgi ; 3 ; 127.0.0.1:2005 ; www-data ; /etc/php5/cgi/php.ini
# nano /etc/php5/cgi/php.ini
    cgi.fix_pathinfo=0
    cgi.rfc2616_headers = 1
# echo “<?php phpinfo( ); ?>” > /var/www/hiawatha/test.php
/* optional /etc/init.d/hiawatha restart && elinks http://example.org/test.php */
 
/* setting up owncloud */
# wget http://owncloud.org/releases/owncloud-3.0.2.tar.bz2
# tar xfv owncloud-3.0.2.tar.bz2
# cp -r owncloud /var/www
# nano /var/www/owncloud/3rdparty/Sabre/HTTP/Response.php
/* line 93 needs to be changed */
    return header(“Status: “.$this->getStatusMessage($code));
# chown -R www-data:www-data /var/www/owncloud/
# apt-get install php5 php5-sqlite php5-json php5-gd curl libcurl3 libcurl3-dev php5-curl zip
tl,dr: wget http://owncloud.org/releases/owncloud-3.0.2.tar.bz2 &&  tar xfv owncloud-3.0.2.tar.bz2 &&  cp -r owncloud /var/www &&  chown -R www-data:www-data /var/www/owncloud/ && apt-get install php5 php5-sqlite php5-json php5-gd curl libcurl3 libcurl3-dev php5-curl zip
# /etc/init.d/hiawatha restart
 
Now the basics should be set up and one might continue with finetuning, testing and bugreporting.

2 comments to owncould on Hiawatha

  • rieper|net

    updated important setting: TimeoutForCGI = $freagginhigh

  • darkside40

    Hi there,
    just trying to get Hiawatha 8.5 running with OwnCloud 4.0.8 and your descriptions helped me a lot. But now i have the problem that i always get a failure that tells me “Token expired”.
    Also the change in the response.php doesnÄt work. Do you have an recent version f owncloud running with Hiawatha and could point me the way?

Leave a Reply

  

  

  

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>