您的位置:首页 > 其它

在windows 2003 server 上安装bugzilla

2012-01-19 16:05 447 查看
在windows 上安装bugzilla,如果想通过Web访问的话,先要确认有没有安装IIS服务。

在网上找了一些如何在windows 上安装bugzilla的文章,感觉不是太麻烦,就是细节不太清楚,花了一天时间终于在windows 2003上安装好了bugzilla,把我的安装过程详细的写下来,这样大家就不用走弯路了。

mysql-installer-5.5.19.0

bugzilla-4.0.3.tar

bugzilla-2.22.1-cn.tar

ActivePerl-5.14.2.1402-MSWin32-x86-295342.msi

perl-bugzilla缺失包

一、安装Mysql

1、下载Mysql(http://www.mysql.com/),我下载的是mysql-4.0.15-win.zip,直接安装即可。同时可以下载安装MySQL Administrator 1.0,这是mysql的管理软件,挺好用的。

2、修改mysql的root用户密码

E:\>cd mysql

E:\mysql>cd bin

E:\mysql\bin>mysql -u root mysql

mysql>UPDATE user SET Password=PASSWORD('<new_password'>) WHERE user='root';

mysql>FLUSH PRIVILEGES;

其中<new_password>为root用户的新密码。更改密码后,要用root用户访问mysql,必须使用mysql -u root -p,按提示敲入正确的root密码。

3、创建bugs用户,并赋给相应的权限

mysql> GRANT SELECT,INSERT,UPDATE,DELETE,INDEX, ALTER,CREATE,DROP,REFERENCES,LOCK TABLES,CREATE TEMPORARY TABLES ON bugs.* TO bugs@localhost IDENTIFIED BY '<bugs_password>';

mysql> FLUSH PRIVILEGES;

要记住bugs用户的密码,在下面的bugzilla配置文件要用。

4、创建bugs数据库

mysql>create database bugs;

二、下载Bugzilla(www.bugzilla.org)

现在最新版是bugzilla-2.18rc3,下载下来后解压到e:\Bugzilla

三、安装Perl (这一节可以参考bugzilla的文档)

1、下载ActivePerl(http://www.activestate.com/),我下载的是ActivePerl-5.8.4.810-MSWin32-x86.msi,安装到e:\Perl(安装路径可自定,以下同)

在e:\bugzilla目录下执行

e:\bugzilla>perl checksetup.pl

此脚本会检查需要的模块是否已经安装,同时初始化数据库,最后要求输入管理员的邮件地址、用户名和密码。第一次会说连不到数据库,找到e:\Bugzilla\localconfig文件,打开找到$db_pass = '';这一行,在引号中填入前面一步中给bugs用户分配的密码,保存。

仔细看返回的提示信息,看看哪些模块还没有安装。然后,安装必须的模块,先执行

可以用下面的方面安装:

把我们下载好的缺失包,放到C:\temp下,然后分别对没有安装的包执行以下操作。

1,首先进入temp目录下

C:\cd temp

c:\temp>ppm install <模块名>

2,直到每个需要安装的包都完成,再执行一遍

e:\bugzilla>perl checksetup.pl

有可能需要我们输入邮件的SMTP的hostname以及你的邮箱名及密码等信息。


这部分可能是大部分人会出现问题的地方。

四、配置IIS

1、打开控制面板->管理工具->Internet Information Services, 再Default Web Site右键选择Properties-> Home Dictory-> Configuration,在App Mappings中可以看到扩展名为.pl和.plx的文件已经添加到了这里面,双击.pl这一行,打开其属性对话框,在“动作”中选“全部动作”,同样修改.plx这一行;然后再添加一行,参数如下:

可执行文件: D:\Perl\bin\perl.exe -T "%s" %s

扩展名: .cgi

动作: 全部动作

注意:这个“-T”一定要加,否则访问时会报错:Too late for "-T" option at e:\bugzilla-2.18rc3\index.cgi line 1.(网上很多文章都没有提到这个,害我找了半天)

2、在Default Web Site右键选择“新建-》虚拟目录”,你可以给这个虚假目录起一个名字,例如“bugzill”,指向e:\Bugzilla目录,在默认页中加入“index.cgi”。

3、打开浏览器,在地址栏输入:http://localhost/bugzilla,看到bugzilla的页面就表示安装成功,现在可以正常使用了。

五、邮件发送配置

由于bugzilla默认使用的是sendmail来发送邮件的,在windows上要想能发送邮件还要修改几个地方。

1、打开e:\bugzilla-2.18rc3\目录下的CGI.pl、\Bugzilla\BugMail.pm和\Bugzilla\Token.pm文件,找到如下内容(可能略有不同):

open SENDMAIL, "|/usr/lib/sendmail -t -i";

print SENDMAIL $msg;

close SENDMAIL;

换成

use Net::SMTP;

my $smtp_server = 'smtp.163.com'; # 这里换成你自己使用的邮件服务器地址

# Use die on error, so that the mail will be in the 'unsent mails' and

# can be sent from the sanity check page.

my $smtp = Net::SMTP->new($smtp_server) ||

die 'Cannot connect to server \'$smtp_server\'';

$smtp->auth('youname@163.com', 'password') or die "auth error\n"; # 这里换成你自己使用的邮件服务器上的用户名和密码

$smtp->mail('younam@163.com'); # 这里换成你自己使用的邮件地址

$smtp->to($login); #注意这里,每个文件中的login参数名称是不一样的

$smtp->data();

$smtp->datasend($msg); #注意这里,每个文件中的msg参数名称是不一样的

$smtp->dataend();

$smtp->quit;

2、安装perl的 Net::SMTP 模块

在DOS窗口中,执行以下命令添加下载模块的地址

C:\>ppm rep add glob http://glob.com.au/ppm
然后用以下命令安装:

c:\>ppm install Net::SMTP

会提示说找到了多个模块(有3个),并列出这些模块的名称

3、根据上一步中列出的模块名称,再次用ppm install<模块名> ,把列出的这三个模块全部安装上。

4、把下面的内容保存到c:\test.pl文件中,

#test.pl

#!/usr/local/bin/perl -w

use Net::SMTP;

$smtp = Net::SMTP->new('smtp.163.com'); # 这里换成你自己使用的邮件服务器地址

$smtp->auth('yourname@163.com', 'password') or die "auth error\n"; # 这里换成你自己使用的邮件服务器上的用户名和密码

$smtp->mail('yourname@163.com'); # 这里换成你自己使用的邮件地址

$smtp->to('yourname@163.com'); #这里是接收地址

$smtp->data();

$smtp->datasend("To: yourname@163.com\n");

$smtp->datasend("\n");

$smtp->datasend("中文内容一\nsecond line\n第三行third line");

$smtp->dataend();

$smtp->quit;

然后运行 c:\>perl test.pl

5、到你的邮箱中看看是不是收到了一封新邮件?收到了就表示邮件可以正常工作了。如果没有收到,检查2、3、4步。

六、汉化

1、把e:\bugzilla-2.18rc3\template\en 在原目录下复制一份,目录为e:\bugzilla-2.18rc3\template\cn。

到http://www.sourceforge.net,找到bugzilla-cn,目前版本只有2.17.99,不过一样可以使用(有部分页面会和2.18不一样),文件名是:bugzilla-2.17-cn-0.99-withCSS.tar.gz。下载下来后解开到e:\bugzilla-2.18rc3\template目录下,覆盖cn目录下的文件。

2、打开浏览器,在地址栏输入:http://localhost/bugzilla,点击页面下方的“Parameters”链接,修改其中的“languages”和“defaultlanguage”的属性值为“cn”,提交页面,就可以看到中文页面了,如果没有看到中文,刷新一下就应该可以了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: