首页 > 代码库 > 内网搭建HmaiServer邮件服务器及AfterLogic webmail问题

内网搭建HmaiServer邮件服务器及AfterLogic webmail问题

    最近由于工作需要,在内网搭建HmaiServer邮件服务器及AfterLogic webmail,所遇到的问题与解决办法与大家分享。

    环境 xampp 1.8.2

                  windows 2003    

    在笔记本win7(连接互联网)上搭建HmaiServer邮件服务器及AfterLogic webmail后一切正常,遂到内网服务器windows 2003(未连接互联网)搭建,结果:

           1、登陆AfterLogic webmail用户页面无响应,在install页面与adminpanel检查数据库连接均测试成功,开启日志后发现

            

    [03:40:09.82] DB(PDO/mysql) : start connect to root@localhost
          没有连接到数据库,但是进后台检查数据库测试连接成功。

     究其原因是Mysql数据库的问题,当远程访问mysql时,mysql会解析域名,会导致访问速度很慢。

     解决办法  禁止mysql做域名解析

         在my.ini里面添加 
         [mysqld] 

         skip-name-resolve (选项就能禁用DNS解析,连接速度会快很多。但是不能在MySQL的授权表中使用主机名只能用ip )
         skip-grant-tables  (如果mysql服务器没有开远程帐户,在my.ini里面加上skip-grant-tables)
        

    2、登陆AfterLogic webmail之后,能收到邮件列表,但不能获取邮件内容。

          先检查是否是Hmailserver的问题,用Foxmail软件代替webmail连接hmailserver,pop3连接不上,使用IMAP连接成功,进入Foxmail后,不能发送邮件,报错。

    原因为电脑里的杀毒软件禁止了Foxmail,重装解决,证明不是hmailserver的问题。

    检查hmailserver数据库,发现.eml存储文件名,联想到是不是路径的问题,因为我把hmailserver安装到中文目录下,重装Hmailserver到英文目录,解决问题。

          3、AfterLogic webmail开启withoutdomain项时,就是只输入用户名不输入@域,出现有些用户能登陆,有些用户不能登陆(主要是新注册用户)

          开启用户名登陆配置为 data/settings/settings.xml 

    <UseLoginAsEmailAddress>Off</UseLoginAsEmailAddress>
    <LoginFormType>Login</LoginFormType>
    <LoginAtDomainValue>somedomain.com</LoginAtDomainValue>
    <UseLoginWithoutDomain>On</UseLoginWithoutDomain>

          由于需要编写了用户注册页面,出现新用户登陆不成功,以为是注册页面的问题,使用Hmailserver客户端添加用户,同样失败。

     测试老用户错误密码返回信息为“账户或密码错误”,新用户返回信息为“连接服务器错误”。

          检查AfterLogic webmail数据库,发现只有老用户的信息存储在数据库里。检查日志,发现AfterLogic webmail向hmailserver发送连接请求时,老用户带域名,新用户没有域名,只有用户名,便在Hmailserver中添加默认域名,问题解决。