X-Git-Url: https://vcs.fsf.org/?p=squirrelmail.git;a=blobdiff_plain;f=INSTALL;h=023b711a78a9946e38f1a1f8a5e2a83e3c72424b;hp=33c223a0e67c58e5e06f693673180ed62ec87836;hb=13056cde5b3cd51a81af5fb13c6ca8544dfa48b5;hpb=2a32fc83f95eba42be0d1752ef685adf10e1edc9 diff --git a/INSTALL b/INSTALL index 33c223a0..023b711a 100644 --- a/INSTALL +++ b/INSTALL @@ -1,3 +1,16 @@ +Installing SquirrelMail +======================= + +Table of Contents: + 1. (PHP4) Configure your webserver to work with PHP4 + 2. (IMAP) Setting up IMAP (not covered) + 3. (INSTALL) Obtaining and installing SquirrelMail + 4. (RUN) Running SquirrelMail + 5. (CHARSETS) Russian Charsets + + + + 1. CONFIGURE YOUR WEBSERVER TO WORK WITH PHP4 --------------------------------------------- @@ -7,6 +20,11 @@ to run as CGI under Apache. How you end up doing this is up to you (your mileage may vary). + NOTE: The new plugin architecture required the use of some functions + which are not in all versions of PHP4. You will need at least + PHP4 beta2. If you need to upgrade please go ahead and install the + latest release version of PHP4. + a. Obtaining and compiling PHP4 Point your favorite webserver at http://www.php.net/version4/ and @@ -36,19 +54,16 @@ b. Changing php.ini can be done at configure time with the configuration directive --with-config-file-path=PATH. - Squirrelmail does not use cookies as of version 0.4. Edit the - php.ini file and change session.use_cookies to 0 (false). Also be - sure to change the session.save_path to someplace that can only be - read and written to by the webserver. session.save_path is the + Edit the php.ini file and make sure session.use_cookies is 1. Also + be sure to change the session.save_path to someplace that can only + be read and written to by the webserver. session.save_path is the location that PHP's session data will be written to. - SECURITY WARNING - SquirrelMail saves non plaintext passwords in - PHP's session data to log on to the IMAP server. If a user has - access to write PHP scripts on your system and knows the location - where PHP stores session data, he could get a listing of the - sessions being used and then read a given session's data with his - own PHP script. Caution should be used when setting up permissions - and locations of php.ini and the session data. + SECURITY WARNING - If a user has access to write PHP scripts on your + system and knows the location where PHP stores session data, he + could get a listing of the sessions being used and then read a given + session's data with his own PHP script. Caution should be used when + setting up permissions and locations of php.ini and the session data. c. Setting up .php files to use PHP4 @@ -77,7 +92,7 @@ d. Running into trouble SquirrelMail is still under development. Therefore you should always get the newest version around. Look at - http://squirrelmail.sourceforge.net/index.php3?page=5 to see what it + http://www.squirrelmail.org/index.php3?page=5 to see what it is. If you want to be bleeding edge you might want to consider using the latest CVS version (with the latest and most fashionable of bugs). @@ -97,13 +112,18 @@ b. Setting up directories The data directory is used for storing user preferences, like signature, name and theme. When unpacking the sources this directory - is created as data/ in you SquirrelMail directory. This directory + is created as data/ in your SquirrelMail directory. This directory must be writable by the webserver. If your webserver is running as - the user nobody you can fix this by running: + the user "nobody" you can fix this by running: + + $ chown -R nobody data + $ chgrp -R nobody data + + Keep in mind that with different installations, the web server could + typically run as userid/groupid of nobody/nobody, nobody/nogroup, + apache/apache or www-data/www-data. The best way to find out is to read + the web server's configuration file. - chown -R nobody data - chgrp -R nobody data - There also needs to be a directory where attachments are stored before they are sent. Since personal mail is stored in this directory you might want to be a bit careful about how you set it @@ -113,27 +133,63 @@ b. Setting up directories permissions. You could do this by running these commands (still granted that the webserver is running as nobody/nobody) - cd /var/some/place - mkdir SomeDirectory - chgrp -R nobody SomeDirectory - chmod 730 SomeDirectory + $ cd /var/some/place + $ mkdir SomeDirectory + $ chgrp -R nobody SomeDirectory + $ chmod 730 SomeDirectory If you trust all the users on you system not to read mail they are not supposed to read change the last line to chmod 777 SomeDirectory - or simply use /tmp as you attachments directory. If a user is - aborting a mail but has uploaded som attachments to it the files - will be lying around in this directory forever if you do not remove - them. + or simply use /tmp as you attachments directory. + + If a user is aborting a mail but has uploaded some attachments to it + the files will be lying around in this directory forever if you do not + remove them. To fix this, it is recommended to create a cron job that + deletes everything in the attachment directory. Something similar + to the following will be good enough: + + $ cd /var/attach/directory + $ rm -f * + + However, this will delete attachments that are currently in use by people + sending email when the cron job runs. You can either (1) make sure that + the cron job runs at an obscure hour and hope that nobody gets upset, or + (2) you can run a modified version of the commands above. Check out the + man pages for other commands such as 'find' or 'tmpreaper'. + + One sample script you could set up that would erase all attachments, but + wouldn't erase preferences, address books, or the like (just in case your + attachment directory is the same as your data directory) might look like + this: + + $ rm `find /var/attach/directory -atime +2 | grep -v "\." | grep -v _` + + Remember to be careful with whatever method you do use, and to test out + the command before it potentially wipes out everyone's preferences. c. Setting up SquirrelMail - All configuration directives you need to worry about in SquirrelMail - is in the file config/config.php in you SquirrelMail directory. This - file is pretty well commented. + There are two ways to configure Squirrelmail. In the config/ directory, + there is a perl script called conf.pl that will aid you in the + configuration process. This is the recommended way of handling + the config. + + You can also copy the config/config_default.php file to config/config.php + and edit that manually. 4. RUNNING SQUIRRELMAIL ----------------------- - Point your browser at the URL at which SquirrelMail is installed. It - should be pretty stright forward to use. Some more documentation - might show up onbe day or another. + Point your browser at the URL at which SquirrelMail is installed. A + possible example of this is: + http://www.yourdomain.com/squirrelmail + + It should be pretty stright forward to use. Some more documentation + might show up one day or another. + + +5. RUSSIAN CHARSETS +------------------- + + For information on how to make SquirrelMail work with Russian + Apache, see the README.russian_apache in the doc/ subdirectory.