如何能让 Webmail 运行在 Apache 1.X 环境中

Apache 2.X

一、准备工作

如果您的还没有安装 Apache和PHP环境,请先下载apache(下载地址:http://httpd.apache.org)以及PHP(下载地址:http://www.php.net)。
本文以Apache1.3.31以及PHP4.4.9为例。相关路径分别为:

Apache: C:\Program Files\Apache Group\Apache
PHP4: C:\php4\
PHP5: C:\php5\
Winmail自带PHP4路径(4.7以前版本):C:\WINDOWS\php4\
Winmail自带PHP5路径(4.8以后版本):C:\WINDOWS\php5\

二、设置 Apache

1. Apache 中设置支持 PHP,按如下操作完成:

1) 找到 Apache 安装的目录,打开 conf\httpd.conf 文件,在文件中修改或增加以下内容。

对于 PHP 5 需要使用Module模式可以按以下更改,

LoadModule php5_module "C:/php5/php5apache.dll"

AddType application/x-httpd-php .php

PHPIniDir "C:/php5/php.ini"

对于 PHP 4 需要使用CGI模式可以按以下更改,

ScriptAlias /php4/ "c:/php4/"
Action application/x-httpd-php "/php4/php.exe"

AddType application/x-httpd-php .php

对于 PHP 4 需要使用Module模式可以按以下更改,

LoadModule php4_module "c:/php4/php4apache.dll"

AddType application/x-httpd-php .php

如果使用winmail自带的PHP,则以上配置中的c:/php5/都替换成C:/windows/php5/,c:/php4/都替换成C:/windows/php4/,并且省略下面的第3)点中的设置。

2) 运行Apache, 测试配置是否正确。

3) Winmail 邮件服务器软件的 Webmail 所需要的 PHP ,PHP.ini文件需做如下改动:

extension=php_ldap.dll(PHP 需要加载 LDAP 模块)
  此模块需要 PHP 的 dlls 目录中的 libeay32.dll、ssleay32.dll 文件支持,将文件拷贝到 windows 的 system32 目录中。
extension=php_mbstring.dll (PHP 需要加载多字节处理模块)
extension=php_openssl.dll (PHP 需要加载OpenSSL模块)
extension=php_gd2.dll (PHP 需要加载gd图形库模块)
extension=php_com_dotnet.dl (PHP 需要加载 com 组件模块)
extension=php_sqlite3.dl (PHP 需要加载 sqlite模块)
extension=php_pspell.dll(PHP 需要加载拼写检查模块)
  此模块需要 aspell-15.dll 文件支持(http://aspell.sourceforge.net/),将文件拷贝到 windows 的 system32 目录中。

short_open_tag = On
register_globals = On
magic_quotes_gpc = Off
display_errors = Off

如果不能上传大的文件,请修改一下后面的值的大小:

post_max_size = 20M
upload_max_filesize = 120M

PHP5中另需修改时区设置:

date.timezone = PRC

 

2. 配置 Apache,以下配置只需要选其一配置运行即可。

1)配置 Apache 支持虚拟目录访问,如http://mail.XXX.com/webmail/的形式:

打开 conf\httpd.conf 文件,在文件的最后增加以下内容

Alias /webmail "C:/Program Files/Magic Winmail/server/webmail/www/"

<Directory "C:/Program Files/Magic Winmail/server/webmail/www">

Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all

DirectoryIndex index.php index.html index.htm

</Directory>

2)配置 Apache 支持虚拟站点访问,如 http://mail.XXX.com/的形式:

打开 conf\httpd.conf 文件,在文件的最后增加以下内容

<Directory "C:/Program Files/Magic Winmail/server/webmail/www">

Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from allDirectoryIndex index.php index.html index.htm

</Directory>

NameVirtualHost *:80

<VirtualHost *:80>

ServerAdmin root@localhost
DocumentRoot "C:/Program Files/Magic Winmail/server/webmail/www"
ServerName XXX.com

</VirtualHost>

如果有多个域名需要添加
可以重复<VirtualHost *:80>此段,每段中的各加入一个域名到ServerName

3) 运行Apache, 测试配置是否正确

3. 设置目录(文件)的访问权限

在以下目录和文件的权限中增加 Everyone “完全控制”:(针对文件系统是 NTFS 的, FAT32文件系统的可以跳过本步骤)

1. Webmail\temp 目录: ~\server\webmail\temp
2. 邮件存储目录: ~\server\store
3. 网络磁盘存储目录: ~\server\netstore
4. 数据库文件: ~\server\data\*.cfg (4.8或者更老的版本:~\server\*.cfg)
5. 数据库备份文件: ~\server\data\*.cfg.bak (4.8或者更老的版本:~\server\*.cfg.bak)
6. 智能防垃圾 SpamAssassin 目录: ~\server\SpamAssassin
7. 上传附件目录 ~\server\temp\upload
  自己安装php,或者使用4.8或者更老的版本,为了允许上传附件,要设置 Windows 的 TEMP 目录. Windows 2000系统是 C:\Winnt\temp 目录, Windows XP,2003,2008 等系统为 C:\WINDOWS\temp.

注意:
1. ~ 表示Magic Winmail安装时选择的目录,黙认是安装在 C:\Program Files\Magic Winmail。
2. 如果PHP.ini中已经自行修改过upload_tmp_dir的目录,请把此目录也加入以上要求的权限。
3. 目录的权限要选择“将父系可继承对象传播给该对象”
4. 如果更改了“邮件存储目录”,请直接设置更改后的目录权限。

三、测试

上面的设置过程完程后,您就可以通过浏览器访问 http://yourserverip/webmail/