squirrelmail+openldap安装备忘录

安装 squirrelmail 

    cd /home/pkg

    tar -xzvf squirrelmail-1.4.4.tar.bz

    cd squirrelmail-1.4.4

    cd plugins

    tar -xzf ../../quota_usage-1.3-1.2.7.tar.gz

    cp quota_usage/config.php.sample quota_usage/config.php

    cd ../

    ./configure

    # 你将要设置如下选项

     

    #选择 “2. Server Settings”=>“A. Update IMAP Settings”=>“8. Server software”改成“courier”;回到主菜单,选择“4.General Options”=>“1. Data Directoryand”改成“/var/www/data/”;再退回主菜单,选择“8. Plugins”=>添加你希望用到的插件。回到主菜单,选择“10. Languages”,将“ Default Language”改成“zh_TW”,“Default Charset”改成“utf-8”。保存退出。

    mv data /var/www/

    chown -R vpopmail.vchkpw /var/www/data

    cd ../

    mv squirrelmail-1.4.4 /var/www/html/squirrelmail

我在这里遇到几个问题:进入网页里,报错imap_server,可能是imap没启动,把所有关于QMAIL的服务都要启动,出现/data和apache不能结合,是因为apache没权限写入/data目录
出现402什么的字眼,可能是selinux把权限限制了,把selinux关了就行了(在/etc/selinux/config,设置为DISABLE就行了),有时输入用户名和密码出现密码错误,可能是没给vpopmail的权限,如果出现无法存取页面的错误,那么注意seisson的权限问题
    
      这里要提一下squirrelmail汉化:
    小松鼠邮件系统汉化
小松鼠本身支持很多语言,可下载相应的语言包。可到其主页去下载

下载汉化包,这里给出现在的汉化包:
wget [url]http://switch.dl.sourceforge.net/sourceforge/squirrelmail/zh_CN-1.4.4-20050308.tar.gz[/url]
8.3 汉化包安装
tar zxvf zh_CN-1.4.4-20050308.tar.gz
解压之后有locale目录,把locale下的文件移到squirrelmail目录下的locale目录下就行了     





   支持LDAP:

             进入/var/www/html/squirrelmail/config/下(根据自己安装的目录所定)
                     vi config.php
      ................................................................................................
..........................................................................................................
...........................................................................................................
..........................................................................................................
$theme[48]['NAME'] = 'Classic Blue 2';
$theme[49]['PATH'] = SM_PATH . 'themes/powder_blue.php';
$theme[49]['NAME'] = 'Powder Blue';
$theme[50]['PATH'] = SM_PATH . 'themes/techno_blue.php';
$theme[50]['NAME'] = 'Techno Blue';
$theme[51]['PATH'] = SM_PATH . 'themes/turquoise.php';
$theme[51]['NAME'] = 'Turquoise';

$default_use_._addr_book = false;
$ldap_server[0] = array(
    'host' => '192.168.10.220',填上LDAP服务器的IP
    'base' => 'dc=webmail,dc=print68,dc=com',填上LDAP服务器的域名
    'name' => '192.168.10.220',填上LDAP服务器的名字
    'port' => 389,填上LDAP的端口,这是默认的
    'charset' => 'utf-8'语言
);

$abook_global_file = '';
$abook_global_file_writeable = false;
$abook_global_file_listing = true;
$abook_file_line_length = 2048;
   

或者在/var/www/html/squirrelmail下
执行./configure
   #选择 “6. Address Books”=>“1. Change LDAP Servers”=>然后自己按提示选择
     

               由于LDAP服务器版本是V3的,但squirrelmail支持的是V2,所以要在/usr/local/openldap/etc/openldap/sladp.conf 里
                      # Sample security restrictions
#       Require integrity protection (prevent hijacking)
#       Require 112-bit (3DES or better) encryption for updates
#       Require 63-bit encryption for simple bind
# security ssf=1 update_ssf=112 simple_bind=64
allow bind_v2    在这里加上这行,让他支持V2版本
# Sample access control policy:
#       Root DSE: allow anyone to read it
#       Subschema (sub)entry DSE: allow anyone to read it
#       Other DSEs:
#               Allow self write access
#               Allow authenticated users read access
#               Allow anonymous users to authenticate



                     因�槲��把 SquirrelMail �A�O��a�O�� Big5 ,但 LDAP 的 LDIF �Y�皆�� UTF-8 ��a格式,前提是系统了装了PHP-ICONV的包,如果没装,系统盘里有包

              所以我们要进/var/www/html/squirrelmail/functions/abook_ldap_server.php 里
           310         // $fullname = $this->charset_decode($row['cn'][0]); //�A�O值
           311         $fullname = iconv("utf-8","big5",$row['cn'][0]);      //�� LDAP 查到的 utf-8 中文�Y��D�Q成 big5 在�鹘o SquirrelMail

#vi /usr/local/www/data/squirrelmail/functions/abook_ldap_server.php
264         //$expr = $this->charset_encode($expr);   //预设值
265         $expr = iconv("big5","utf-8",$expr);     //输入搜寻条件为 big5 但转�Q成 utf-8 在去查 LDAP
使用 IE 登入 SquirrelMail 後收到中文�n名的附件按下 Download 後原�淼闹形�n名�n案下�d後�成�y�a�n名
   #vi /usr/local/www/data/squirrelmail/src/download.php
102 $filename = charset_encode($filename,$default_charset,false); //加在�@行下面
103 $filename = iconv("big5","utf-8",$filename);                   //加入此行


让长的邮件内容自动换行

用SquirrelMail显示长的邮件内容时有一个缺陷,就是不会自动换行。查看源文件后,发现
问题有两点:一是在显示邮件内容时使用的是“pre”标识,二是表格TD都是不定长的。
要让长的邮件内容能自动换行,需要做如下改动:

1、不再使用“pre”标识显示邮件内容:
vi functions/mime.php
--    $body = '<pre>' . implode("\n", $body_ary) . '</pre>';
++    $body = implode("<BR>\n",$body_ary);



2、找到显示“$messagebody”的TD语句,将TD改成定长:
vi src/read_body.php
老版本:
--    "   <TR><TD BGCOLOR=\"$color[4]\" WIDTH=\"100%\">\n"
++    "   <TR><TD BGCOLOR=\"$color[4]\" WIDTH=\"580\">\n"

新版本:
--    html_tag( 'td', '<br>'. $messagebody."\n", 'left')
++    html_tag( 'td', '<br>'. $messagebody."\n", 'left','','width=580')
添加change_sqlpass如果提示
Could not find Pear DB library
解决方案如此:Could not find Pear DB library   这个错误终于解决了
   只要安装Pear DB library就行了
root@MyDapper:/usr/local/php/bin# ./pear install DB
downloading DB-1.7.6.tgz ...
Starting to download DB-1.7.6.tgz (124,807 bytes)
............................done: 124,807 bytes
install ok: channel://pear.php.net/DB-1.7.6
root@MyDapper:/usr/local/php/bin# ./pear list
Installed packages, channel pear.php.net:
=========================================
Package        Version State
Archive_Tar 1.3.1 stable
Console_Getopt 1.2     stable
DB          1.7.6 stable
MDB2           2.3.0 stable
PEAR           1.4.11   stable
XML_RPC        1.5.1 stable
我配change_sqlpass没成功啊!!!有哪位配成功了share下

你可能感兴趣的:(职场,LDAP,休闲,SquirrelMail)