array(2) { ["docs"]=> array(10) { [0]=> array(10) { ["id"]=> string(3) "428" ["text"]=> string(77) "Visual Studio 2017 单独启动MSDN帮助(Microsoft Help Viewer)的方法" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(8) "DonetRen" ["tagsname"]=> string(55) "Visual Studio 2017|MSDN帮助|C#程序|.NET|Help Viewer" ["tagsid"]=> string(23) "[401,402,403,"300",404]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400964" ["_id"]=> string(3) "428" } [1]=> array(10) { ["id"]=> string(3) "427" ["text"]=> string(42) "npm -v;报错 cannot find module "wrapp"" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(4) "zzty" ["tagsname"]=> string(50) "node.js|npm|cannot find module "wrapp“|node" ["tagsid"]=> string(19) "[398,"239",399,400]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400760" ["_id"]=> string(3) "427" } [2]=> array(10) { ["id"]=> string(3) "426" ["text"]=> string(54) "说说css中pt、px、em、rem都扮演了什么角色" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(12) "zhengqiaoyin" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400640" ["_id"]=> string(3) "426" } [3]=> array(10) { ["id"]=> string(3) "425" ["text"]=> string(83) "深入学习JS执行--创建执行上下文(变量对象,作用域链,this)" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "Ry-yuan" ["tagsname"]=> string(33) "Javascript|Javascript执行过程" ["tagsid"]=> string(13) "["169","191"]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511399901" ["_id"]=> string(3) "425" } [4]=> array(10) { ["id"]=> string(3) "424" ["text"]=> string(30) "C# 排序技术研究与对比" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(9) "vveiliang" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(8) ".Net Dev" ["catesid"]=> string(5) "[199]" ["createtime"]=> string(10) "1511399150" ["_id"]=> string(3) "424" } [5]=> array(10) { ["id"]=> string(3) "423" ["text"]=> string(72) "【算法】小白的算法笔记:快速排序算法的编码和优化" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(9) "penghuwan" ["tagsname"]=> string(6) "算法" ["tagsid"]=> string(7) "["344"]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511398109" ["_id"]=> string(3) "423" } [6]=> array(10) { ["id"]=> string(3) "422" ["text"]=> string(64) "JavaScript数据可视化编程学习(二)Flotr2,雷达图" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "chengxs" ["tagsname"]=> string(28) "数据可视化|前端学习" ["tagsid"]=> string(9) "[396,397]" ["catesname"]=> string(18) "前端基本知识" ["catesid"]=> string(5) "[198]" ["createtime"]=> string(10) "1511397800" ["_id"]=> string(3) "422" } [7]=> array(10) { ["id"]=> string(3) "421" ["text"]=> string(36) "C#表达式目录树(Expression)" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(4) "wwym" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(4) ".NET" ["catesid"]=> string(7) "["119"]" ["createtime"]=> string(10) "1511397474" ["_id"]=> string(3) "421" } [8]=> array(10) { ["id"]=> string(3) "420" ["text"]=> string(47) "数据结构 队列_队列实例:事件处理" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "idreamo" ["tagsname"]=> string(40) "C语言|数据结构|队列|事件处理" ["tagsid"]=> string(23) "["246","247","248",395]" ["catesname"]=> string(12) "数据结构" ["catesid"]=> string(7) "["133"]" ["createtime"]=> string(10) "1511397279" ["_id"]=> string(3) "420" } [9]=> array(10) { ["id"]=> string(3) "419" ["text"]=> string(47) "久等了,博客园官方Android客户端发布" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(3) "cmt" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511396549" ["_id"]=> string(3) "419" } } ["count"]=> int(200) } 222 hMailServer 邮件系统安装配置篇(zhuan) - 爱码网
lsfv

http://blog.dvxj.com/pandola/hMailserver-install-config.html

 

此篇进入正题,详细的说一下安装和配置过程。得先说一下,hMailServer是真正的邮件服务端,而Roundcube Webmail仅仅是为hMailServer提供Webmail应用的,可以让你通过Web方式收发邮件,如果你不用Web方式收发邮件,只安装hMailServer就可以了,通过邮件客户端就能收发邮件,比如Outlook或者Foxmail等。   不要被上一篇的系统要求吓到,碰到问题再去看看哪里需要解决,先把hMailServer安装了,下载回来的是可执行文件,Windows下安装问题不大,hMailServer本身还带有Web方式管理邮件系统,也是PHP的,所以要想用Web方式管理邮件系统,你的PHP环境也得先搭建好,而且Roundcube WebMail也是需要PHP的,还有就是数据库的问题,hMailServer可以使用自带的简化本版的MSSQL,或者用Mysql也行,看你喜好。所以安装hMailServer和Roundcube WebMail之前,请先把PHP+Mysql搞定,起码要求的版本要满足需要,至于是Apache还是IIS也看你的需要了。还有就是要先把你的域名解析到服务器的IP地址上,比如abc.com/mail.abc.com,域名的MX记录不要忘了添加。有时间的话,再把域名的TXT记录也加上,提前用工具把域名的DKIM和SPF记录做好,以免发出的邮件被当成垃圾邮件拒收了。又罗嗦了这么多,看来真是老了,进入正题,安装hMailServer:
[hMailServer安装 1、双击hMailServer-5.3.2-B1769.exe] [hMailServer安装 2、点击Next下一步,选择数据库类型。] [hMailServer安装 3、点击Next下一步,选择安装目录。] [hMailServer安装 4、默认继续。] [hMailServer安装 5、默认继续。] [hMailServer安装 6、点击Install按钮,开始安装。] [hMailServer安装 7、输入邮件系统管理员密码,等会儿要用到,记住了。点击Next下一步,] [hMailServer安装 8、点击Finish,安装完成。] [hMailServer安装 9、选择localhost,点击Connect按钮。] [hMailServer安装 10、输入刚才设置的密码,点击OK按钮。] [hMailServer庐山真面目,安装结束。]   邮件系统的配置在网络管理中进行吧,在Apache的配置里把hMailServer安装目录下的PHPWebAdmin目录,映射到你的WEB服务根目录下,目录别名你随意,我用的mailadmin。这样你就可以通过[http://www.abc.com/mailadmin/]来访问并且管理邮件服务了。正式动工之前还得做点小工作,在hMailServer的安装目录下,找到bin目录,里面有个hMailServer.ini的文件,得编辑一下,把网上找到的中文语言配置文件chinese.ini复制到hMailServer的安装目录下的Language目录里,打开hMailServer.ini文件,其中的[GUILanguages]下ValidLanguages=english,swedish这一行,等号后面加一个chinese,变成这样:ValidLanguages=chinese,english,swedish,保存。然后在hMailServer的安装目录下,找到PHPWebAdmin目录,里面有个config-dist.php文件,打开,找到

$hmail_config[\'rooturl\'] = "http://localhost/";

修改成:

$hmail_config[\'rooturl\'] = "http://www.abc.com/mailadmin/";

具体的路径根据你自己在Apache里配置的来修改。继续看下面

$hmail_config[\'defaultlanguage\'] = "english";

修改成:

$hmail_config[\'defaultlanguage\'] = "chinese";

其他不动,保存为config.php。   如果你的PHP环境和WEB服务都正常的话,通过浏览器访问[http://www.abc.com/mailadmin/]的话,就能看到邮件系统WEB管理登录的界面了。输入用户名Administrator,密码就是你安装hMailServer时设置的管理员密码,点击确定按钮即可。如果出现乱码,请把hMailServer安装目录里PHPWebAdmin目录中的index.php文件打开,找到:

<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">

修改成:

<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312">

  hMailServer的配置界面就是这样的了,然后就要开始正式的配置了。下面的配置步骤就是通过WEB方式进行的了,还要唠叨一下,请提前做好域名解析的相关工作,前面介绍篇里已经交代过了。
[hMailServer配置 1、点击左边树状菜单的域名,右边窗口里点击添加,输入你的域名。] [hMailServer配置 2、签名标签里,可以设置本域名下邮件的全局签名。] [hMailServer配置 3、限制标签里,可以定义本域名下所有邮箱使用大小,单个邮件尺寸,单个邮件帐号邮箱大小等等。] [hMailServer配置 4、DKIM Signing标签,通过相关工具生成DKIM的私钥和公钥还有Selector,然后填入这里,别忘记启用,是用来防止邮件被当成垃圾邮件拒收的,相关信息请搜索“什么是DKIM”。高级那个标签里默认即可。] [hMailServer配置 5、然后点击左边树状菜单的域名前的+号,点击abc.com,右边窗口里可以看到刚才的设置结果,还可以添加主机别名,具体怎么用俺还在研究中。大概是可以添加好多个域名,如abc.net,abc.org之类,然后你新建的邮件帐号使用这些域作为@之后的部分同样可以登录邮箱。] [hMailServer配置 6、点击左边abc.com下的帐号,右边可以新建邮箱帐号,其他标签里的东东自己看着办,不复杂。] [hMailServer配置 7、点击左边树状菜单的设置-协议-SMTP,右边窗口里中继邮箱标签,本地主机名输入mail.abc.com,保存。] [hMailServer配置 8、点击左边树状菜单的设置-协议-SMTP-路由,右边常规标签里,按图输入相关内容。] [hMailServer配置 9、点击左边树状菜单的设置-高级-TCP/IP端口,右边窗口里添加对应协议和端口,如果本机有防火墙,别忘了在防火墙里让对应端口可以通过。] [hMailServer配置 10、点击左边树状菜单的设置-高级-IP范围-Internet,右边窗口里允许连接标签,按图勾选,] [hMailServer配置 11、允许递交来自标签,最后那个外部外部电子邮件复选框内对勾去掉,防止有人用本邮件服务器发送垃圾邮件。] [hMailServer配置 12、SMTP验证标签,根据你自己实际用要求设置。我是没用这个验证。]   其他各种设置我基本都用的默认值,没动,到这里基本上设置就差不多了,用刚才新建的邮件帐号发一封电子邮件测试一下吧,如果成功了,那就说明OK了,反正我是这么折腾的,收发邮件没有问题。如果你照做了有问题,欢迎留言或者发邮件给我讨论交流,谢谢支持。   另外,hMailServer是支持多域的,比如你还有个xyz.com也要用作邮件服务,按照上面的配置再来一遍,把需要添加xyz.com域的地方都设置好了就没问题,反正我是用了两个不同的域,一切正常。关于hMailServer的配置就这么多内容了,俺也是边研究摸索,边设置应用的,下一篇就是Webmail的安装配置了,用的是Roundcube Webmail,界面非常不错,功能也很好,还有很多插件来增强易用性,安装配置好Roundcube Webmail之后,我后面又给她添加了用户修改密码的插件,全局地址薄,自定义来件高亮显示,附件直接拖放到邮箱附件列表,写邮件时动态添加联系人邮件,功能都不错,下一篇中也会大致介绍一下怎么添加插件,敬请关注。

分类:

技术点:

相关文章: