Installing group-office (pro-version) through installatron


#1

Hi, I am starting a topic concerning the hosting of the Group-Office pro version app on reclaim hosting,
aiming at eventually completing a full step-by-step installation guide.
This is done to make the last 12 hours in my life useful, for my own record and for the community’s use.

I installed Group-office through Installatron.
From there, it is unclear if this install will support GO-pro functionalities, since it includes a use license which specifies that both the free community license and the pro license are available for this app.
Installation ran smoothly, and probably it would suffice for the free community version.
However, I need the pro functionalities. Besides the pro license key that I have to purchase from Group-Office directly, I need all dependencies to allow the pro functionalities to work.
To this aim, Group-Office provides a test script (gotest.php, included in the Installatron install, and located in your app’s root folder, in /public_html/).
Here are the results of the Group-Office test script and my questions:

1. Output buffering: Warning: output_buffering is enabled. This will increase memory usage might cause memory errors
manages “large files”, and should be settable by changing a line in the “php.ini” file (“Output_buffering = Off”). According to a phpinfo.php script I made, this is not settable on ReclaimHosting. Do you confirm? Shall it represent a problem?
there is a solution proposed here


which provides possibility to bring file size limit up to 128Mb.
However, this involves changing the php version, in my case from “native (5.6)” to regular “5.6”.
Making the change fixes the original problem, but gives way more new issues in the go-test script which points to a fatal error (Group-Office will not run properly with current system setup!). not a solution therefore.
The initial issue could be solved by activating the right PHP options (to match the native (5.6) settings), but which ones?
Anyone could provide the list of PHP options enabled in the native (5.6) setting?

2. libwbxml: Warning: libwbxml2 is not installed. SyncML sync will not work!

Can be downloaded, but needs cmake command available in SSH console to install (from here: https://cmake.org/files/v3.7/cmake-3.7.2.tar.gz)
I made SSH access. From console (Mac OS X terminal):

$ wget https://cmake.org/files/v3.7/cmake-3.7.2.tar.gz

Then back to file manager, extract to folder, and rename folder to “cmake”

$ cd cmake
$ ./bootstrap && make && make install

Some 10 minutes later, I get:

CMake Error at cmake_install.cmake:36 (file):
file cannot create directory: /usr/local/doc/cmake-3.7. Maybe need administrative privileges.
make: *** [install] Error 1

then I try to ignore and install libwbxml any way.
In console I do:

$ wget https://sourceforge.net/projects/libwbxml/files/latest/download?source=files
[or any other http source where the install package is located]

Then back to file manager, extract to folder, and rename folder to “libwbxml”
Also, delete the original install package
Then

$ cd libwbxml/src/
$ cmake . -B/tmp/build/libwbxml

I get: -bash: cmake: command not found
stuck here.

according to a recent Group-Office forum post

Newbie installation issues - Group-Office groupware forum

it is possible to make a manual install by simply “downloaded the module and place it in the “Module” directory).”
from where should the module be downloaded?

I visited libwbxml - Browse /libwbxml at SourceForge.net (apparently still alive) and also downloaded libwbxml-0.11.5.tar.gz. No information there as to whether it can be simply “placed in a specific directory”, and which files should be placed there
Besides, I already have a “/office/modules/syncml” folder among my modules… What is it and why is it not read by the test script?

3. TNEF: Warning: tnef is not installed or not executable. you can’t view winmail.dat attachments in the email module.
Not essential, but I followed instructions from this group-office forum topic (TNEF winmail.dat .. - Group-Office groupware forum), from which I’m copying the following lines:
Make SSH access from console, then

$ wget https://sourceforge.net/projects/tnef/files/tnef/tnef-1.4.12.tar.gz/download
[or any http address where the installation package is located]

Then back to file manager, extract to folder, and rename folder to “tnef”

$ cd tnef
$ ./configure --prefix=$HOME

now you’ll find “tnef” in the [root]/bin folder. you may like to double check that it has file
permissions 755 (correct if not. Use cpanel file manager for this to, or chmod…)
and you may like to double check the content of [root]/.bash_profile contains “$HOME/bin” in the path, something like this:
PATH=$PATH:$HOME/bin
Then, edit the GO config.php file in GO’s root folder (in /public_html), and add (or edit) the following line anywhere:

$config[‘cmd_tnef’]="/home2/yourdomain/bin/tnef";

Done.
Back to file manager, delete the original package from your root folder.
Relaunching the gotest.php script gives me same error…
What should I do?

4. Ioncube version check: Installed: version 4.7.5 - Ioncube loader is installed but needs to be updated. Group-Office will only work reliably with ioncube loader version 5.0 or later. The most recent version of the loader can be found here.
solution: can be activated through PHP selector, selecting the right options, but which? See point 1.

5. CalDAV alias: Note: The alias /caldav was not detected. Please create: Alias /caldav /groupoffice/modules/caldav/calendar.php.
+ CardDAV alias: Note: The alias /carddav was not detected. Please create: Alias /carddav /groupoffice/modules/carddav/addressbook.php.
The said .php files do exist, but under a different path : /office/modules/* instead of /groupoffice/modules/*
How do I create the alias?
This post (CardDAV support - Group-Office groupware forum) says I can define the alias in in /etc/apache2/conf.d/groupoffice.conf
From the cPanel’s file manager, I have no such file. Actually, not even a /etc/apache2 directory. However, from SSH console, I do have a lot of directories in /etc, including an /apache2 directory, which however has no subdirectory /conf.d nor a groupoffice.conf or similar file…
The only .conf files I have access to and that seem to match are:
/public_html/office/go/vendor/SabreDAV/examples/webserver/apache2_vhost_cgi.conf
/public_html/office/go/vendor/SabreDAV/examples/webserver/apache2_htaccess.conf
/public_html/office/go/vendor/SabreDAV/examples/webserver/apache2_vhost.conf

8. CalDAV autodiscovery: Note: The redirect /.well-known/caldav was not detected. Please create a redirect: Redirect 301 /.well-known/caldav /caldav
+ CardDAV autodiscovery: Note: The redirect /.well-known/carddav was not detected. Please create a redirect: Redirect 301 /.well-known/carddav /carddav
No such directory as /.well-known/* … what should I do?

9. Microsoft-Server-ActiveSync alias: Note: The alias /Microsoft-Server-ActiveSync was not detected. Please create: Alias /Microsoft-Server-ActiveSync /groupoffice/modules/z-push/index.php.
I have no such directory as /groupoffice/modules/z-push/
However, I do have an /office/modules/zpushadmin/* folder, with a ZpushadminModule.php
No idea what it is meant for.

First, I need to install w-push.
I followed the instructions for automated installation here: Z-push 2.1 - Group-Office Groupware and CRM Documentation
In terminal, I do:

$ cd public_html/office/modules/sync/z-push
$ chmod +x ./install.sh
$ ./install.sh

Done.
Now, back in cPanel file manager, navigate to the newly installed z-push module (public_html/groupoffice/modules/z-push) where you’ll find the index.php file you were looking for at the very beginning.

I therefore I followed the instructions for manual install here:
https://www.group-office.com/wiki/Z-push_2.1#Installation
On step 6 it says:

Now, you must configure Apache to redirect the URL ‘Microsoft-Server-ActiveSync’ to the index.php file in the modules/z-push/ directory.
This can be done by adding the line:
Alias /Microsoft-Server-ActiveSync /path/to/groupoffice/modules/z-push/index.php

Thank you very much, I do have such a file, but no clue WHERE I should add the said line.

What should I do ?

Besides, considering this is a shared hosting environment, it seems I should rather follow the workaround proposed by this post
Active Sync in shared hosting envrionment - Group-Office groupware forum which points to yet another post: z-push.net • View topic - [FIX] Problems with IMAP on Server with php cgi
The proposed solutions are beyond my skills. Did not try it.

What should I do ?

Hence, I did not perform step “7. Restart apache2 and configure your mobile device with the servername, username and password and you should be in sync!”

What should I do ? How do I “restart apache2” ?

Also, the manual installation instructions provided by group-office (Z-push 2.1 - Group-Office Groupware and CRM Documentation ) provide details concerning CGI mode:

  • default situation: “z-push only works when PHP is loaded as an Apache module”
    How do I know if PHP is “loaded as an Apache module”? The cPanel documentation found here is beyond my area of knowledge (https://documentation.cpanel.net/display/ALD/Configure+PHP+and+suEXEC)

  • non-default situation: “If you use PHP in CGI mode you’ll have to add 2 .htaccess files”
    one in /“path to group-office”/modules/z-push/.htaccess (did it), and second “in the Group-Office document root (next to the index.php file)” (didi it). Do I need to restore these .htaccess files to previous situation if I don’t use PHP in CGI mode ?

What should I do ?

Any help would be highly appreciated.


#2

Hey Axel,

Let me take a look at this and see what we can do. As you’re finding out, in shared hosting you aren’t going to be able to install server packages or restart Apache in the same way as you would with a private server. However we’re happy to work with you to see if we can get the necessary packages loaded in there. I’ll also note that test page includes everything and the kitchen sync and some are simply warnings (for example output buffering may not be a hard requirement versus a "you might have an issue so be aware). Microsoft Activesync is specifically for Windows Mobile so if you aren’t planning on connecting any devices like that to calendar/email/etc that might be overkill to worry about. But let me take a look at the full list and see what we can do to make it work for you. To a certain degree when we can, we’re happy to install packages on the server as long as there are no potential conflicts with other accounts and services.

More soon.


#3

Hi tim,
Thank you again for the very prompt answer and attention.
Let me just make clear that the reason why I’m posting is because in the last 48 hours since I subscribed to ReclaimHosting, I have been very happy with this service, and strongly believe in contributing to its further development.
Let me also make clear that there is a huge development potential here for hosting group-office pro, as other hosting solutions on the market are way more expensive.
I did not post this full list hoping they would be a solution to every single issue, but to save a lot of time to the community by having one single topic addressing all the issues together.
Finally, I agree that [quote=“timmmmyboy, post:2, topic:762”]
output buffering may not be a hard requirement
[/quote]
and it is a minor issue.
As for Microsoft Activesync, since group-office is meant to sync the calendars of all the involved collaborators in a project, I cannot predict if [quote=“timmmmyboy, post:2, topic:762”]
planning on connecting any devices like that to calendar/email/etc that might be overkill to worry about
[/quote]

Some collaborators may be using Windows mobile devices. It would be ideal if it could work.
If it doesn’t, well, then whoever will read the post will know.
Thanks again, looking forward to your answers.


#4

IN addition

The Cron module (called “Manage system tasks” in your group-office Starting menu) is used to administer the tasks that the system needs to do at given times, especially email reminders.
Since Cron Jobs are managed in ReclaimHosting by the cPanel “Cron Jobs” tool, some adaptations seem necessary.
First, the tentative solution (apparently not working). Below that, I’ll explain the whole process.
Go to your cPanel, and look for the Cron Jobs icon.
In « Add New Cron Job », leave « common settings » blank. (this should let your group-office application manage the timing of Cron jobs. Does it?).
Then, in « command », add this code line :

www-data php /home/“your user name”/public_html/office/groupofficecli.php -r core/cron/run -c /home/“your user name”/public_html/office/config.php > /dev/null
Don’t forget to adapt “your user name”.

This seems to be working fine in Cron Jobs. Does not work in Group Office.
Let me explain.

This post (Manual install on other Linux, Windows or Mac systems - Group-Office Groupware and CRM Documentation) explains:

there should be a cron job setup for Group-Office

In fact, when your log into your group-office panel, select « start menu > Manage system taks », you get an error message :

The main cron job doesn’t appear to be running. Please add a cron job:

          • www-data php /home/“your user name”/public_html/office/groupofficecli.php -c=/home/“your user name”/public_html/office/config.php -r=core/cron/run -q > /dev/null

I get the same error after my tentative solution (through cPanel’s Cron Jobs, see above)
Some explanations : this post (Cron user manual - Group-Office Groupware and CRM Documentation) says :

If the cron module is installed and you have enabled some jobs for it and you found out that the jobs are not executed then you need to check if the server(system) cron deamon (Crontab) is calling the Group-Office cron controller every minute.
On ubuntu systems you can check that by going to the folder:
/etc/cron.d/
In that folder you should find the file:
groupoffice-cron

In my case, no such directory found, no such file found
Fortunately, post says :

If the file does not exist then you need to create it and add the following code into it:

          • www-data php /usr/share/groupoffice/groupofficecli.php -r=core/cron/run -c=/etc/groupoffice/config.php > /dev/null

First, locate the right paths called in this line.
In ReclaimHosting, the groupofficecli.php AND the config.php files are located in the same directory :

/home/“your user name”/public_html/office/ (in my case, I installed group-office in a new “office” directory, rather than in the default “groupoffice” directory. In this latter case, path would be : /home/“your user name”/public_html/groupoffice/groupofficecli.php).

You should therefore adapt the line code to :

          • www-data php /home/“your user name”/public_html/office/groupofficecli.php -r=core/cron/run -c=/home/“your user name”/public_html/office/config.php > /dev/null

Second, notice that the line code proposed in the group office instructions page differs from the message received within your group office install (see above), which is :

          • www-data php /home/“your user name”/public_html/office/groupofficecli.php -c=/home/“your user name”/public_html/office/config.php -r=core/cron/run -q > /dev/null

The order of commands differ, and a “-q” command is added…
In any case, let’s try both…
Go to your cPanel, and look for the Cron Jobs icon.
In « Add New Cron Job », select your preferred « common settings ». Twice per hour fits my needs.
Then, in « command », add the above code line :

          • www-data php /home/“your user name”/public_html/office/groupofficecli.php -r=core/cron/run -c=/home/“your user name”/public_html/office/config.php > /dev/null
            or
          • www-data php /home/“your user name”/public_html/office/groupofficecli.php -c=/home/“your user name”/public_html/office/config.php -r=core/cron/run -q > /dev/null

Don’t forget to adapt « your user name ».
Now click « add new Cron Job ».
I both cases, I get :

Error
"-":1: bad command
errors in crontab file, can’t install.

This is because the cPanel Cron Jobs manager does not use the full UNIX commands. To solve this issue, use the command used in my first tentative solution. This fixes the issue in Cron Jobs, but apparently not in my Group-office app.

What should I do?


#5

The cron job thing is an easy fix, they’re referencing a user “www-data” that doesn’t exist on our servers. In your case cron jobs will always run under your user account so that part can be left out. I would also reference the full path to php which is /usr/bin/php so the cron job would read

* * * * /usr/bin/php /home/"your user name"/public_html/office/groupofficecli.php -c=/home/"your user name"/public_html/office/config.php -r=core/cron/run -q > /dev/null

(replacing your user name with your cPanel user of course)

Still looking into your other requests. Some we are were able to get installed serverside to make it work. The alias thing still has me scratching my head a bit on what it’s looking for. Aliases aren’t allowed in .htaccess but I found some RewriteRules that should do the same thing, however that test script doesn’t seem to read them.


#6

Thank you Timmy,

Actually the line that will be accepted by cPanel’s Cron Jobs manager is without the initial five * asterisks (which are handled by the Cron Job from by specific fieldboxes) :

/usr/bin/php /home/“your user name”/public_html/office/groupofficecli.php -c=/home/“your user name”/public_html/office/config.php -r=core/cron/run -q > /dev/null

Nevertheless, within my group office install, I still get [quote=“axelf, post:4, topic:762”]
The main cron job doesn’t appear to be running. Please add a cron job:* * * * * www-data php /home/“your user name”/public_html/office/groupofficecli.php -c=/home/“your user name”/public_html/office/config.php -r=core/cron/run -q > /dev/null
[/quote]

This issue seams to touch many other Group Office users who have an install on a shared host, despite a Cron Jobs management in cPanel. >> I’ll post the Group Office support about this.


#7

Timmy, out of 9 issues, ReclaimHosting has solved 5 within 24 hours. I’d say this is the sign of the excellent support provided. Thank you and congratulations.

Regarding the issues still open, I am under the terrible impression that such issues will not be solved until I activate the Pro license on my install. In fact, all of them are closely related to Pro functionalities.
I’ll contact the Group Office support tomorrow, and will report back here.

I will obviously also post the full solution on the Group Office Forum, clearly mentioning the incredible support provided by ReclaimHosting.

Regards.


#8

That would interesting if the pro license was required for that to work. Keep me updated on that end! And thanks for the kind words!