PDA

View Full Version : eGroupWare Install


crudolphy
29th November 2005, 00:33
I just reinstalled ISPConfig using the Ubuntu "Breezy" how to. Now I want to install eGroupWare. I had tried this before using the Ubuntu "Hoary" setup that I had, but I messed with some configuration files and it didn't work so I started from scratch, following the How To to the letter.

I can log into ISPConfig, I have installed phpmyadmin and can look at the database. I have created a web, created a web administrator, and two email users. I can receive email with a pop 3/smtp client, I have a problem sending which I will start another thread on. I have created another database and db user with password. When I point my browser to www.myurl.com the default ispconfig index.html page is displayed. Obviously when I point my browser to https://www.myurl.com:81 I get the ispconfig login page.

Now on to eGroupWare. As the user "root" I used wget to download the tar file from sourceforge into my /tmp directory. I then:

cd /var/www/web1/web

This directory contains the "error" directory and index.html and nothing else. I use the command:

tar xjvf /tmp/eGroupWare-1.2RC3-1.tar.bz2

and the tar is unpacked into the "egroupware" directory. Now the directory structure looks like:

/var/www/web1/web/egroupware

The file had an owner of "chuck" and a group of "chuck" (me), so I:

chown -R web1_chuck:web1 egroupware

this ownership matches that of the "web" directory and the "error" directory underneath "web".

Under the egroupware directory there are lots of files and other directories. The most important at this point is the:

egroupware/setup

directory. It's owner now is "web1_chuck" and group is "web1" and the permissions are read/write/execute for user and group, read/execute for other. To install eGroupWare the instructions state to unpack the tar file to your web "root" directory, then point your browser to:

http://www.myurl.com/egroupware/setup/

When I do this I get a http 500 internal server error. Additionally when I log in as the adminstrator for my web (not the adminstrator of ispconfig) and go to the "Web-ftp" button and login in as "web1_chuck" there are error messages displayed in the right frame of the page. When I delete the egroupware directory the error messages go away and ispconfig acts normally.

Please advise me as to what I should look at to get this going.:confused:

Thanks in advance

Chuck Rudolphy

falko
29th November 2005, 01:55
Is there maybe a .htaccess file in egroupware/setup/ or in egroupware/?

crudolphy
29th November 2005, 06:28
To answer your question yes there is one .htaccess file in eGroupware. The structure is:

/var/www/web1/web/egroupware/.htaccess

it's permissions are user rw all others just r and it's owner is web1_chuck and group is web1.

The contents of the file are:

#
#Set
#
#AllowOverRide FileInfo
#
#To enable parsing off this file
#
php_value memory_limit 32M
php_value max_execution_time 60
php_flag register_globals Off
php_flag magic_quotes_gpc Off
php_flag magic_quotes_runtime Off
#settings for the file upload, you might increase them further
php_value upload_max_filesize 16M
#session handling: now the check for expired sessions is done on every 10th session creation
php_flag session.use_trans_sid Off
php_value session.gc_probability 1
php_value session.gc_divisor 10
#multibyte extension: needed for utf-8
php_value mbstring.func_overload 7

As I stated in my last post when I (chuck not admin) log into ISPconfig to manage my web and I go to the WEB-FTP section and login as "web1_chuck" the page is divided into two frames. The left frame has the file structure tree which is displayed correctly the right side of the frame displays the following errors:

Warning: main(weblibmodule.inc.php) [function.main]: failed to open stream: No such file or directory in /home/admispconfig/ispconfig/lib/session.inc.php on line 238

Warning: main() [function.include]: Failed opening 'weblibmodule.inc.php' for inclusion (include_path='.:/root/ispconfig/php/lib/php') in /home/admispconfig/ispconfig/lib/session.inc.php on line 238

Warning: go_api::uses(ispconfig_isp_web.lib.php) [function.uses]: failed to open stream: No such file or directory in /home/admispconfig/ispconfig/lib/session.inc.php on line 126

Warning: go_api::uses() [function.include]: Failed opening 'ispconfig_isp_web.lib.php' for inclusion (include_path='.:/root/ispconfig/php/lib/php') in /home/admispconfig/ispconfig/lib/session.inc.php on line 126

Fatal error: Class 'isp_web' not found in /home/admispconfig/ispconfig/lib/session.inc.php on line 127

If I delete the eGroupWare directory from the web, ISPConfig behaves normally and does not display these errors.

I greatly appreciate your quick response to the original post. Thanks loads for your help.

Chuck Rudolphy

falko
29th November 2005, 10:52
To answer your question yes there is one .htaccess file in eGroupware. The structure is:

/var/www/web1/web/egroupware/.htaccess

it's permissions are user rw all others just r and it's owner is web1_chuck and group is web1.

Please rename that file, e.g. to _htaccess:

mv /var/www/web1/web/egroupware/.htaccess /var/www/web1/web/egroupware/_htaccess and check if you still get the 500 error.

crudolphy
29th November 2005, 14:52
By renaming the .htaccess file to _htaccess I no longer get the http500 server error and when I point my browser I get the desired page.:)

However in ISPconfig when I log into "WEB-FTP" module in the right frame of the page I still have the following:

Warning: main(weblibmodule.inc.php) [function.main]: failed to open stream: No such file or directory in /home/admispconfig/ispconfig/lib/session.inc.php on line 238

Warning: main() [function.include]: Failed opening 'weblibmodule.inc.php' for inclusion (include_path='.:/root/ispconfig/php/lib/php') in /home/admispconfig/ispconfig/lib/session.inc.php on line 238

Warning: go_api::uses(ispconfig_isp_web.lib.php) [function.uses]: failed to open stream: No such file or directory in /home/admispconfig/ispconfig/lib/session.inc.php on line 126

Warning: go_api::uses() [function.include]: Failed opening 'ispconfig_isp_web.lib.php' for inclusion (include_path='.:/root/ispconfig/php/lib/php') in /home/admispconfig/ispconfig/lib/session.inc.php on line 126

Fatal error: Class 'isp_web' not found in /home/admispconfig/ispconfig/lib/session.inc.php on line 127

And now additionally above this where the icons were I now have the following:

Warning: main(weblibmodule.inc.php) [function.main]: failed to open stream: No such file or directory in /home/admispconfig/ispconfig/lib/session.inc.php on line 238

Warning: main() [function.include]: Failed opening 'weblibmodule.inc.php' for inclusion (include_path='.:/root/ispconfig/php/lib/php') in /home/admispconfig/ispconfig/lib/session.inc.php on line 238

How can we fix this:confused:

I also have another question. Why did I have to rename the file from .htaccess to _htaccess? I know that apache uses .htaccess files for authorization in combination with .htpasswd files for authentication. Why doesn't this installation (with ISPConfig) like that?

Again thanks for your help:) :)

Chuck

till
29th November 2005, 15:51
....

How can we fix this:confused:

Maybe youve read some of the other threads about this issue. Currently none of the developers can reproduce this and there is no reference to the missing file in the sources at all.

I also have another question. Why did I have to rename the file from .htaccess to _htaccess? I know that apache uses .htaccess files for authorization in combination with .htpasswd files for authentication. Why doesn't this installation (with ISPConfig) like that?

This has nothing to do with ISPCOnfig. ISPConfig supports .htaccess file. In most cases there are some apache modules missing or the .htaccess file wants to set permissions that are not allowed for .htaccess files. You may have a look at the permissions granted to .htaccess files in your httpd.conf.

crudolphy
30th November 2005, 05:15
It seems that this has become two issues so I will keep this thread going on the .htaccess issue which could conclude quickly and start a new thread for the error messages above.

Regarding .htaccess. I read this afternoon a short tutorial from the Apache Web Site. It states,

"In general, you should never use .htaccess files unless you don't have access to the main server configuration file."

Later on they say,

"However, in general, use of .htaccess files should be avoided when possible. Any configuration that you would consider putting in a .htaccess file, can just as effectively be made in a <Directory> section in your main server configuration file."

Because this is my machine I have access to the main configuration, so I could do away with the .htaccess file completely by making those changes directly. This would be method #1 of solving this.

In the /etc/apache2/apache2.conf there are several places where .htaccess files are discussed. Once in a <files></files> section and also in all of the <directory></directory> sections. In every case the directives contained are:

Order allow,deny
Deny from all

Now I understand why I got the http 500 internal server error.:D

One way to correct this would be to change the <Directory></Directory> section relating to for all virtual hosts, i.e. /var/www/*/web/ and change the statement to:

Allow from all

Due to the statements in the .htaccess file I would also have to make sure this section included a

AllowOverride FileInfo

statement, which I believe it does.

This would be method #2 of solving this.

My questions are::confused:

Are my statements regarding method #1 and method #2 above correct?

In ISPConfig there is a section ("Apache Directives") for the ISPConfig adminstrator to enter in specfic directives for each virtual host. These directives I believe are stored in the /etc/apache2/vhosts/Vhosts_ispconfig.conf file, is this correct?

Could a custom <directory></directory> section be entered in this section that pertained to the /var/www/web1/web/egroupware directory, listing the specific directives for just that directory, thus eliminating the need for the .htaccess file?

Looking at the /etc/apache2/vhosts/Vhosts_ispconfig.conf file I see several statements that are similiar in nature to the directives contained in this .htaccess file. Would it be possible to place the directives contained in the .htaccess file directly in "Vhosts" file by hand or via the ISPConfig "Apache Directives" configuration page?

Lastly which of the methods that you identify as correct would in your opinion be the best way to address this?

Your help is very much appreciated.

Chuck Rudolphy

falko
30th November 2005, 13:18
It seems that this has become two issues so I will keep this thread going on the .htaccess issue which could conclude quickly and start a new thread for the error messages above.

Regarding .htaccess. I read this afternoon a short tutorial from the Apache Web Site. It states,

"In general, you should never use .htaccess files unless you don't have access to the main server configuration file."

Later on they say,

"However, in general, use of .htaccess files should be avoided when possible. Any configuration that you would consider putting in a .htaccess file, can just as effectively be made in a <Directory> section in your main server configuration file."

Because this is my machine I have access to the main configuration, so I could do away with the .htaccess file completely by making those changes directly. This would be method #1 of solving this.

In the /etc/apache2/apache2.conf there are several places where .htaccess files are discussed. Once in a <files></files> section and also in all of the <directory></directory> sections. In every case the directives contained are:

Order allow,deny
Deny from all

Now I understand why I got the http 500 internal server error.:D
The ISPConfig installer should have added

<Directory /var/www/*/web>
Options +Includes -Indexes
AllowOverride None
AllowOverride Indexes AuthConfig Limit FileInfo
Order allow,deny
Allow from all
<Files ~ "^\.ht">
Deny from all
</Files>
</Directory> to your httpd.conf, so .htaccess files should work. They in fact do on my installation. ;)




In ISPConfig there is a section ("Apache Directives") for the ISPConfig adminstrator to enter in specfic directives for each virtual host. These directives I believe are stored in the /etc/apache2/vhosts/Vhosts_ispconfig.conf file, is this correct? Yes.

Could a custom <directory></directory> section be entered in this section that pertained to the /var/www/web1/web/egroupware directory, listing the specific directives for just that directory, thus eliminating the need for the .htaccess file?

You could paste
php_value memory_limit 32M
php_value max_execution_time 60
php_flag register_globals Off
php_flag magic_quotes_gpc Off
php_flag magic_quotes_runtime Off
#settings for the file upload, you might increase them further
php_value upload_max_filesize 16M
#session handling: now the check for expired sessions is done on every 10th session creation
php_flag session.use_trans_sid Off
php_value session.gc_probability 1
php_value session.gc_divisor 10
#multibyte extension: needed for utf-8
php_value mbstring.func_overload 7 into the Apache Directives field, which would make these directives valid for all directories of your web site; if you want them to be valid only for a specific directory, use

<Location '/egroupware'>
php_value memory_limit 32M
php_value max_execution_time 60
php_flag register_globals Off
php_flag magic_quotes_gpc Off
php_flag magic_quotes_runtime Off
#settings for the file upload, you might increase them further
php_value upload_max_filesize 16M
#session handling: now the check for expired sessions is done on every 10th session creation
php_flag session.use_trans_sid Off
php_value session.gc_probability 1
php_value session.gc_divisor 10
#multibyte extension: needed for utf-8
php_value mbstring.func_overload 7
</Location>


Looking at the /etc/apache2/vhosts/Vhosts_ispconfig.conf file I see several statements that are similiar in nature to the directives contained in this .htaccess file. Would it be possible to place the directives contained in the .htaccess file directly in "Vhosts" file by hand or via the ISPConfig "Apache Directives" configuration page?Don't edit the Vhosts_ispconfig.conf file manually! Your changes will be overwritten by ISPConfig!


Lastly which of the methods that you identify as correct would in your opinion be the best way to address this?Use the Apache Directives field.

crudolphy
2nd December 2005, 06:59
Falko, thanks for the reply. While my apache2.conf file contains the same
<directory></directory> statements as what you posted above, it didn't work on my installation. However I have taken your advice and through the "Apache Directives" field in ISPconfig I have entered the directives contained in the .htaccess file and applied them to the entire virtual host. I left the .htaccess file renamed _htaccess.

This now takes care of this part of the problem with my installation of eGroupWare. I am still not out of the woods yet. See my post in this section regarding "Web-FTP".

Thanks for your help:)

crudolphy
27th December 2005, 02:11
It has been awhile since I worked on this project of mine. When installing this group of programs, you run a script to check if "dependencies" are met. Following is a snippet from the report after running this script:

Checking required PHP version 4.3+ (recommended 5.0): 4.4.0-3 ==> True
Checking php.ini: safe_mode = Off: ini_get('safe_mode')='1' = On
safe_mode is turned on, which is generaly a good thing as it makes your install more secure. If safe_mode is turned on, eGW is not able to change certain settings on runtime, nor can we load any not yet loaded module. *** You have to do the changes manualy in your php.ini (usualy in /etc on linux) in order to get eGW fully working !!! *** Do NOT update your database via setup, as the update might be interrupted by the max_execution_time, which leaves your DB in an unrecoverable state (your data is lost) !!!
Checking php.ini: magic_quotes_runtime = Off: ini_get('magic_quotes_runtime')='0' = Off
Checking php.ini: register_globals = Off: ini_get('register_globals')='0' = Off
Checking php.ini: memory_limit >= 16M: ini_get('memory_limit')='32M'
Checking php.ini: max_execution_time >= 30: ini_get('max_execution_time')='60'
Checking php.ini: file_uploads = On: ini_get('file_uploads')='1' = On
Checking php.ini: include_path contain .: ini_get('include_path')='.:/usr/share/php:/usr/share/pear'
Checking extension mysql is loaded or loadable: True
Checking extension pgsql is loaded or loadable: False
The pgsql extension is needed, if you plan to use a pgSQL database.
Checking extension odbc is loaded or loadable: True
Checking extension oci8 is loaded or loadable: False
The oci extension is needed, if you plan to use a Oracle database.
Checking extension mbstring is loaded or loadable: True
Checking php.ini: mbstring.func_overload = 7: ini_get('mbstring.func_overload')='7'
Checking extension imap is loaded or loadable: True
Checking extension session is loaded or loadable: True

Warning: pear_check(): open_basedir restriction in effect. File(/usr/share/php/PEAR.php) is not within the allowed path(s): (/var/www/web1/) in /var/www/web1/web/egroupware/setup/check_install.php on line 205

Warning: pear_check(PEAR.php): failed to open stream: Operation not permitted in /var/www/web1/web/egroupware/setup/check_install.php on line 205

Warning: pear_check(): Failed opening 'PEAR.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/web1/web/egroupware/setup/check_install.php on line 205

Checking PEAR is installed: False
PEAR is needed by SyncML or the iCal import+export of calendar.
PEAR::Log is needed by SyncML.


I know that the vhosts_ispconfig.conf file sets the parameters that this script is complaining about: i.e. "Safe-Mode" and the "open_basedir" which prevents the opening of 'PEAR.php'. I also know that I can't manually edit this file as ispconfig will overwrite my changes. What can I do about this?

Thanks

Chuck Rudolphy

falko
27th December 2005, 15:06
You can disable PHP Safe Mode.

crudolphy
27th December 2005, 21:14
Ok, I found where I could disable safe mode in ispconfig so that should take care of that problem.

What about the "open_basedir" directive? I tried putting a symbolic link to PEAR.php in the /var/www/web1/web directory but it fails. I found some documentation that said that this wouldn't work because the link is resolved to it's original location and if that is not within the "allowed path" then it won't work. Would you consider over-riding this directive some how? Could I instead copy the PEAR.php script to this directory? If I copy PEAR.php to this directory would that work?

Thanks

Chuck Rudolphy

till
27th December 2005, 21:20
I think you can copy the pear.php file to your local website. This will be a cleaner and more secure approach then allowing symlinks to files outside of the web directory.

crudolphy
15th January 2006, 08:03
I just wanted to extend my thanks to Till and Falko for their help, the work they and others have done on this project and let you know that I now have a successful eGroupWare installation:D I saw a previous post here thanking you guys for you work and all I can do is lend my voice to the chorus.

For those who care, the eGroupWare suite of programs and it's framework seem to provide everything I thought it would and more. I look forward to learning more about it and using more of it as time goes on.

Thanks guys

Chuck

GeorgeMike
29th July 2006, 05:05
Hi
After changing the .htaccess in the egroupware dir, I can browse the nmat.info/egroupware
However, in the nmat.info/egroupware/setup the same problem occured and I checked the nmat.info/egroupware/setup dir... no .htaccess file there.
How can I change it? Is is the same proble?
Please help me
THanks

falko
30th July 2006, 14:37
I just browsed your site, and when I go to http://www.nmat.info/egroupware/setup/ I get this:

Warning: require(../phpgwapi/inc/common_functions.inc.php) [function.require]: failed to open stream: No such file or directory in /home/nmat/public_html/egroupware/setup/inc/functions.inc.php on line 47

Fatal error: require() [function.require]: Failed opening required '../phpgwapi/inc/common_functions.inc.php' (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/nmat/public_html/egroupware/setup/inc/functions.inc.php on line 47So I went to the phpgwapi directory and found there's no inc directory in it, just a js directory. So it seems there are files missing. Please check your eGroupware sources.

GeorgeMike
31st July 2006, 09:25
Hi
When I browse the http://www.nmat.info/egroupware/setup/ it still not accessible again. Please help me to check it
Thanks

falko
1st August 2006, 13:00
:confused: Did you read my previous post?

GeorgeMike
1st August 2006, 17:11
Hi Falko,
I read already. When I just upzipped it again as it were not enough file. I accessed the http://www.nmat.info/egroupware/setup/ It warned me that internal error.... so I asked you.... Now I accesssed it again and the error message is the warning of absence the inc folder... I dont know why it was like that.
I checked my zip file at my PC.. it contains inc directory but when upload to my server & unzip... It has no inc folder.... Wondering where is the real problem...
THanks for your help

fobicodam
1st August 2006, 20:38
may be a quota problem? or disk space...

falko
2nd August 2006, 14:44
Can you upload the missing folders? Do you get errors in your FTP client?

GeorgeMike
4th August 2006, 18:51
Hi all,
Can anyone help me ? Install theegroupware and got the following error message.... My URL: http://tuan.homedns.org/work/setup/index.php
Thanks


Warning: include(D:\WebDir\egroupware\setup/phpgwapi/setup/setup.inc.php) [function.include]: failed to open stream: No such file or directory in D:\WebDir\egroupware\header.inc.php on line 118

Warning: include() [function.include]: Failed opening 'D:\WebDir\egroupware\setup/phpgwapi/setup/setup.inc.php' for inclusion (include_path='.;C:\php5\pear') in D:\WebDir\egroupware\header.inc.php on line 118

Warning: require(D:\WebDir\egroupware\setup/phpgwapi/inc/common_functions.inc.php) [function.require]: failed to open stream: No such file or directory in D:\WebDir\egroupware\setup\inc\functions.inc.php on line 47

Fatal error: require() [function.require]: Failed opening required 'D:\WebDir\egroupware\setup/phpgwapi/inc/common_functions.inc.php' (include_path='.;C:\php5\pear') in D:\WebDir\egroupware\setup\inc\functions.inc.php on line 47

fobicodam
4th August 2006, 19:03
mmmm look at the "\" "/" mess you have there...

GeorgeMike
4th August 2006, 19:55
Hi
I didn't interfere tha code. All done y installation scripts. Please give me suggestion
Thanks

falko
5th August 2006, 18:22
Warning: include(D:\WebDir\egroupware\setup/phpgwapi/setup/setup.inc.php) [function.include]: failed to open stream: No such file or directory in D:\WebDir\egroupware\header.inc.php on line 118
You have Windows paths somewhere in your eGroupware configuration. Are you running this on a Windows server, or did you simply forget to change the paths when you transferred the eGroupware files to your Linux server?

GeorgeMike
6th August 2006, 02:06
Hi falko,
Thanks, as your concern , I opened the config file ana have it fixed. However, there is still a minor error

Warning: Division by zero in D:\WebDir\egroupware\calendar\inc\class.uiviews.in c.php on line 610

Warning: Division by zero in D:\WebDir\egroupware\calendar\inc\class.uiviews.in c.php on line 610

What is the cause for the division by zero. Please suggest! Thanks

falko
7th August 2006, 13:42
Warning: Division by zero in D:\WebDir\egroupware\calendar\inc\class.uiviews.in c.php on line 610

What's in line 610 of class.uiviews.inc.php? And why do you still have D:\ in there?

samop
4th June 2007, 09:40
Could you help me with this problem?

I got debian linux and i try to install egroupware on it. I installed apache, mysql, php with apt-get command.

When i launch check installation i get this warning:

Checking extension mysql is loaded or loadable: False


So i checked php.ini. On forums its writen, that those 2 lines must be enabled.

extension=mysql.so
extension=gd.so

I did that, restarted apache but nothing changed.
Do you know why extensions still not loaded?
Do I need to do any other changes?

falko
5th June 2007, 20:09
Did you install the php-mysql package?