码迷,mamicode.com
首页 > Web开发 > 详细

Postfix邮箱(十二):修改Web页面及多域名访问

时间:2014-12-25 11:29:18      阅读:416      评论:0      收藏:0      [点我收藏+]

标签:通讯录   邮件系统   收件箱   邮箱   风格   

说明:Extmail支持多域名访问,通过修改WEB页面,实现各个域使用独立的页面文件,访问不同的域名看到相应的页面风格。

流程:先修改默认域yourmail.com的页面,再复制给新增域,最后稍稍修改新增域即可。


一、修改Web页面

说明:修改页面请参考附件中的模板文件,这里只列出一些重点项

技术分享

1、修改页面中的显示文字

[root@mail ~]# cd /var/wwww/excuite/extmail
[root@mail extmail]# vi lang/zh_CN
%lang_abook = (        # 通讯录页面
%lang_compose = (      # 写信页面
%lang_folders = (      # 收件箱页面
%lang_login = (        # 登陆页面,修改上图中页面内容
    meta_title => ‘欢迎使用YourMail邮箱!‘,
    welcome_index => ‘欢迎使用YourMail邮箱!‘,
    wsplash => ‘Postfix邮件系统<br />Postfix是Wietse Venema在IBM的GPL协议之下开发的MTA软件;<br />它比sendmail更快、更健壮、更灵活、更安全、兼容性更好。‘,
    intro2 => ‘<b>Courier-Authlib</b><br />Courier-Authlib是一个数据认证库,负责courier-imap,maildrop的认证。‘,
    intro3 => ‘<b>Maildrop</b><br />Maildrop是本地邮件投递代理(MDA), 支持过滤、投递和磁盘限额功能。‘,
    intro4 => ‘<b>WebMail</b><br />ExtMail支持多语言、全部模板化,功能基本齐全。‘,
    intro5 => ‘<b>ExtMan</b><br />ExtMan 支持无限域名、无限用户。‘,
    hint_pop3_setting => ‘POP3和SMTP服务器设置信息‘,
%lang_pref = (         # 偏好设置中的常规设置页面
%lang_global = (       # 全局设置,包括底部的说明内容,
    extmail_whatis => ‘感谢您的使用 您可以访问公司网站<a href="http://www.yourmail.com/" target=_blank>‘,
%lang_globalabook = (  # 全球地址簿页面
%lang_readmsg = (      # 读取邮件页面
%lang_filter = (       # 偏好设置中的过滤器设置页面
%lang_netdisk = (      # 网络磁盘页面
%lang_search = (       # 搜索页面


2、修改LOGO图标和登陆页面的Banner图片及背景

LOGO图标文件(120*40像素)路径为:

/var/www/extsuite/extmail/html/default/images/logo.gif

Banner图片文件(180*158像素,最长750)路径为:

/var/www/extsuite/extmail/html/default/images/splash.jpg

Banner背景颜色:

[root@mail ~]# vi /var/www/extsuite/extmail/html/default/css/login.css
{ background:url(/extmail/default/images/splash.jpg) left top no-repeat #79A4D0;}

说明:#79A4D0就是默认的蓝色背景颜色,改成你想要的颜色,例如黑色#000000;

这里也是设置Banner图片路径的地方,修改新增域时会用到。


3、修改登陆首页页面

[root@mail ~]# vi /var/www/extsuite/extmail/html/default/index.html

修改顶部LOGO图片链接:

<DIV class=lg><A href="http://mail.yourmail.com/" target=_blank><IMG alt=某某有限公司
src="/extmail/default/images/logo.gif" border=0></A></DIV><!--//logo -->

说明:如果有公司网站可以链接到www.yourmail.com,提示信息可设置为公司名称。

注释顶部技术支持和自愿捐助:

<!-- <div class=donate><a href="http://www.extmail.org/support/<%LANG%>/index.html" target="_blank">
<b><%support_link%></b></a> |
<img style="vertical-align: middle" src="/extmail/images/donate.png">
<a href="http://www.extmail.org/donate/" target="_blank"><b style="color: #5678A6"><%donate%></b></a>
</div> -->

修改底部说明信息:

      <div class=pb>Powered by <font style="font-weight: bold; color: #000"><%VERSION%></font>
       &copy 2013-2014 YourMail.Com Runtime: <%TIME%></div>

说明:"<%VERSION%>"将显示"ExtMail 1.2",不想要可以删除或修改。

设置"域名"输入框的默认值:

      <INPUT TYPE="text" class="input_n" NAME="domain" value="yourmail.com">

说明:由于是多域系统,登陆时可在域名中输入你想要登陆的域,输入IP是无法登陆的。

POP3和SMTP信息(默认即可):

var hpval = domain();
document.getElementById(‘hintpad‘).innerHTML =  ‘POP3 <b>:</b>&nbsp;&nbsp;pop3.‘+ hpval
 + ‘<br />‘ + ‘SMTP <b>:</b>&nbsp;&nbsp;smtp.‘+ hpval +‘<br />‘;

说明:参数hpval会自动获取域名,文字“POP3与SMTP服务器设置信息”在zh_CN中修改"<%hint_pop3_setting%>"。

  

4、注释顶部“关于”和“帮助”信息

[root@mail ~]# vi /var/www/extsuite/extmail/html/default/TOP_BAN.html
<!-- | <a target=_blank href="http://www.extmail.org/support/<%LANG%>/about.html"><%about%></a> |
<a target=_blank href="http://www.extmail.org/support/<%LANG%>/help.html"><%help%></a> -->

5、注释底部“捐助信息”

[root@mail ~]# vi /var/www/extsuite/extmail/html/default/BOTTOM.html
Powered by <%VERSION%> &copy 2013-2015 YourMail.Com  Runtime: <%TIME%> <!-- <br>
<%extmail_whatis%> -->


6、天气预报和项目新闻

[root@mail ~]# vi /var/www/extsuite/extmail/html/default/welcome.html

更换天气预报:

        <TD  width=230px valign=top style="">
#注释掉无效的天气插件
         <!--   <div class="panelout" id="coolweather_div">
                        <div class="paneltit">&nbsp;<%weatherinfo%></div>
                        <div class="panelin" id="coolweather_container">
                        </div>
                        <script type="text/javascript">
                                coolweather_iconspath = ‘/extmail/plugins/coolweather/icons/‘;
                                coolweather_init();
                        </script>
                </div> -->
#使用气象网站的插件,注册登陆后按网站操作生成脚本如下:
        <script type="text/javascript" src="http://ext.weather.com.cn/91511.js"></script>
        </TD>

气象网站的插件操作:

http://cj.weather.com.cn/

点击天气插件样式右边的“更多”,使用新版1(180*270)或新版2(200*220)

技术分享

技术分享

技术分享

注释项目新闻:

          <!--  <div style="padding-left: 5px;padding-right:5px">
                <div class="panelout" id="etnews_div">
                <div class="paneltit">&nbsp;ExtMail Project News</div>
                <div class="panelin" id="etnews_container"> 
                </div>
                </div>
                <script type="text/javascript">
                        etnews_init();
                </script>
                </div>  -->

7、去掉免费注册按键

[root@mail ~]# vi /var/www/extsuite/extmail/webmail.cf
SYS_SHOW_SIGNUP = 0


说明:在html页面文件中会看到很多"<title>"和"<%VERSION%>"这样的参数,小写的是调用语言文件中设置的值;大写是程序本身调用的参数。


8、查看修改后的结果

技术分享

我这里没修改图片,看网上一个样例:

技术分享

技术分享

结论:页面修改就到这里了,只做了简单的内容修改,懂WEB开发的可以大刀阔斧地改,记得分享哈。




二、配置多域名访问

1、后台新增域名

在webman页面域列表中添加一个域seconed.cn

在用户中添加用户test2@seconed.cn

2、替换cgi目录(附件)

说明:有网友修改了cgi文件,为extmail的多域名访问提供了更好的条件,在此感谢。

作用:增加确认.cf格式文件为配置文件; 增加以域名中间部分为文件(夹)名,可包含特殊字符;

经查看代码和实际测试,没有任何问题,放心使用,懂点perl知识的都能看懂。

[root@mail ~]# cd /var/www/extsuite/extmail
[root@mail extmail]# wget http://www.mzone.cc/wp-content/uploads/2011/04/extmail-cgi-ModifyBy-www.mzone_.cc.zip
[root@mail extmail]# unzip extmail-cgi-ModifyBy-www.mzone_.cc.zip
[root@mail extmail]# mv cgi cgi-bak
[root@mail extmail]# mv extmail-cgi-ModifyBy-www.mzone.cc  cgi
[root@mail extmail]# chmod 755 -R cgi
[root@mail extmail]# chown vmail.vmail -R cgi

3、复制配置文件

[root@mail extmail]# cp webmail.cf seconed.cf

4、复制通讯簿文件

[root@mail extmail]# cp globabook.cf globabook-seconed.cf

5、复制语言文件

[root@mail extmail]# mkdir lang/seconed
[root@mail extmail]# cp lang/*_* lang/seconed/

6、复制页面文件

[root@mail extmail]# cp -R html/default html/seconed

注意:根据cgi中新增的规则,以上复制的文件或文件夹名称必须是域名的主体部分,通讯簿文件要多个globabood-的前缀。




三、修改新增域seconed.cn的WEB页面

1、修改页面中的显示文字

[root@mail ~]# vi /var/wwww/excuite/extmail/lang/seconed/zh_CN
%lang_login = (
    meta_title => ‘欢迎使用Seconed邮箱!‘,
    welcome_index => ‘欢迎使用Seconed邮箱!‘,
%lang_global = (
    extmail_whatis => ‘感谢您的使用 您可以访问公司网站<a href="http://www.seconed.cn/" target=_blank>‘,


2、修改LOGO图标和登陆页面的Banner图片及背景

LOGO图标(120*40像素)路径为:

/var/www/extsuite/extmail/html/seconed/images/logo.gif

Banner图片(180*158像素,最长750)路径为:

/var/www/extsuite/extmail/html/seconed/images/splash.jpg

Banner背景颜色:

[root@mail ~]# vi /var/www/extsuite/extmail/html/seconed/css/login.css
{ background:url(/extmail/seconed/images/splash.jpg) left top no-repeat #FF0000;}

说明:这里我改成#FF0000红色。

注意:这里要修改背景图片的路径,default改成seconed。


3、修改登陆首页页面

[root@mail ~]# vi /var/www/extsuite/extmail/html/seconed/index.html

修改顶部LOGO图片链接:

<DIV class=lg><A href="http://mail.seconed.cn/" target=_blank><IMG alt=第二有限公司
src="/extmail/seconed/images/logo.gif" border=0></A></DIV><!--//logo -->

注意:这里要修改LOGO图片的路径。

修改样式文件链接:

<LINK media=screen href="/extmail/seconed/css/login.css" type=text/css rel=stylesheet>

修改底部说明信息:

      <div class=pb>Powered by <font style="font-weight: bold; color: #000"><%VERSION%></font>
       &copy 2013-2014 Seconed.Cn Runtime: <%TIME%></div>

设置域名默认值:

      <INPUT TYPE="text" class="input_n" NAME="domain" value="seconed.cn">

4、修改顶部LOGO图片链接

[root@mail ~]# vi /var/www/extsuite/extmail/html/seconed/TOP_BAN.html
<IMG src="/extmail/seconed/images/logo.gif" border=0>

5、修改底部信息

[root@mail ~]# vi /var/www/extsuite/extmail/html/seconed/BOTTOM.html
Powered by <%VERSION%> &copy 2013-2015 Seconed.Cn  Runtime: <%TIME%>

6、天气预报

[root@mail ~]# vi /var/www/extsuite/extmail/html/seconed/welcome.html

说明:参考上文在气象网站上将域名绑定到插件上,脚本代码才能生效。


7、修改配置文件

[root@mail ~]# vi /var/www/extsuite/extmail/seconed.cf
SYS_LANGDIR = /var/www/extsuite/extmail/lang/seconed
SYS_USER_TEMPLATE = seconed
SYS_G_ABOOK_FILE_PATH = /var/www/extsuite/extmail/globabook-seconed.cf

8、设置全球地址薄

[root@mail ~]# vi /var/www/extsuite/extmail/globabook-seconed.cf

说明:管理员每次添加、删除用户账号或组账号,都要修改相应的全球地址薄,以方便用户在WEB上查看通讯录。

      网上有一个地址薄自动生成脚本(perl写的),但是不适合多域环境,等我有空研究出自动判断域名分别将邮箱账号导入对应的通讯簿的脚本再发出来。


9、多域名的访问

设置域名解析,将mail.seconed.cn A 记录到10.188.1.83

当访问mail.seconed.cn时会自动转到其主页上,域名框中会显示其当前域名seconed.cn

也可以修改域名访问同系统下的其他域名。

技术分享

10、解决两域互发邮件慢的问题

在最下面的COMMIT上添加一行规则:

[root@mail ~]# vi /etc/sysconfig/iptables
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
[root@mail ~]# service iptables restart

11、两域互发邮件

使用test2账号登陆mail.seconed.cn,给postmaster@yourmail.com发送一封邮件;

查看日志:

[root@mail ~]# tailf /var/log/maillog
Dec 25 10:29:59 mail postfix/smtpd[24444]: initializing the server-side TLS engine
Dec 25 10:29:59 mail postfix/smtpd[24444]: connect from localhost[127.0.0.1]
Dec 25 10:29:59 mail postfix/smtpd[24444]: 507BC1A1ACF: client=localhost[127.0.0.1]
Dec 25 10:29:59 mail postfix/cleanup[24452]: 507BC1A1ACF: message-id=<20141225022959.507BC1A1ACF@mail.yourmail.com>
Dec 25 10:29:59 mail postfix/qmgr[43713]: 507BC1A1ACF: from=<test2@seconed.cn>, size=604, nrcpt=1 (queue active)
Dec 25 10:29:59 mail postfix/smtpd[24444]: disconnect from localhost[127.0.0.1]
Dec 25 10:29:59 mail postfix/pipe[24454]: 507BC1A1ACF: to=<postmaster@yourmail.com>, relay=maildrop, delay=0.32, delays=0.15/0.03/0/0.14, dsn=2.0.0, status=sent (delivered via maildrop service)
Dec 25 10:29:59 mail postfix/qmgr[43713]: 507BC1A1ACF: removed

说明:可以看到没有经过任何过滤,因为postfix信任本地域。

本文出自 “月晴星飞” 博客,请务必保留此出处http://ywzhou.blog.51cto.com/2785388/1595764

Postfix邮箱(十二):修改Web页面及多域名访问

标签:通讯录   邮件系统   收件箱   邮箱   风格   

原文地址:http://ywzhou.blog.51cto.com/2785388/1595764

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!