Saturday, October 10, 2009

Install Group Office on CentOS 5.3

Install Group Office on CentOS 5.3

Start Here: http://www.group-office.com/wiki/Installation

The server is going to be used primarily for Group Office, so I stayed with the script and unpacked the tar file to /var/www/html/groupoffice-pro-3.2.37

Overall, this was fairly straight forward, with the exception of having to upgrade PHP and a some brief scrounging for some rpms.

The installation package includes a test file in the root directory, gotest.php, that provides a useful summary of required items that your server is lacking. So if you don't have php configured, that should be the first order of business.

One of the reasons I use CentOS whenever possible is it's stability and it's conservative approach.

Unfortunately, this means that php >=5.2, one of the prerequisites for Group Office, was not available from the repo.

Not wanting to recompile PHP, it meant having to avail myself of Jason Litka's repository.

[root@server4 ~]# rpm --import http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka
[root@server4 ~]# vi /etc/yum.repos.d/utterramblings.repo
[utterramblings]

Enter the following and then :wq
[utterramblings]
name=Jason's Utter Ramblings Repo
baseurl=http://www.jasonlitka.com/media/EL$releasever/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka

[root@server4 ~]# yum update php
[root@server4 ~]# yum update mysqlat

After upgarding php, simply consult the gotest.php script to find missing prerequisites. In my case:

[root@server4 ~]# yum install php-imap php-xml php-mbstring php-devel
[root@server4 ~]# service httpd restart

Install Zend Ion Cube

[root@server4 ~]# wget http://downloads2.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz
[root@server4 ~]# tar -zxvf ioncube_loaders*
[root@server4 ~]# mv ioncube /var/www/html/ioncube
[root@server4 ~]# service httpd restart

After installing ion cube above, add the Zend extension in bold below to your php.ini file under Language Options before the Zend references:

;;;;;;;;;;;;;;;;;;;;
; Language Options ;
;;;;;;;;;;;;;;;;;;;;

; Enable the PHP scripting language engine under Apache.
engine = On

zend_extension = /var/www/html/ioncube/ioncube_loader_lin_5.2.so


Restart Apache:
[root@server4 ~]# service httpd restart

Check your php version is now updated and ion cube installed:

[root@server4 ~]# php -v
PHP 5.2.11 (cli) (built: Sep 21 2009 14:49:09)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies
with the ionCube PHP Loader v3.1.34, Copyright (c) 2002-2009, by ionCube Ltd.


Install libwbxml:

[root@server4 ~]# rpm -Uvh http://dl.atrpms.net/all/wbxml2-0.9.2-5.el4.at.i386.rpm

Install TNEF:

For whatever reason, I could not pull down tnef-1.3.3-1.2.el4.rf.i386.rpm from dag.wieers.com, even searching manually.

I grabbed it here: http://www.rpmfind.net/linux/rpm2html/search.php?query=tnef
saved it to temp and installed:

[root@server4 ~]# cd /var/tmp
[root@server4 ~]# rpm -Uvh tnef-1.3.3-1.2.el4.rf.i386.rpm

That was about it.

Once you cleared all of the gotest.php prerequisites, you can then start the installation via the home directory, which will walk you through the installation. Keep putty open as you will need to do some mkdir's as some chmod's.

Add your virtual host entry in your Apache httpd.conf file.


<VirtualHost *:80>
ServerAdmin david@mydomain.com
DocumentRoot /var/www/html/groupoffice-pro-3.2.37
ServerName mycal.mydomain.com
ErrorLog logs/mycal.mydomain.com-error_log
CustomLog logs/mycal.mydomain.com-access_log common
</VirtualHost>

Tune Apache according to requirements.

I originally tested using the Community Edition, groupoffice-com-2.18-stable-21, and the procedure is identical.

If you will be using the CE, the items you can skip are indicated in the gotest.php file.

No comments: