最近由於工作需要,在內網搭建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-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中添加默認域名,問題解決。