目录
一.工欲善其事必先利其器,在配置前需要把所有的工具和软件包准备好
二.准备好工具后,就可以开始配置所有软件
配置数据库mysql
配置perl
配置Bugzilla
配置IIS组件:
Bugzilla的基本设置:
Bugzilla的邮箱配置:
Bugzilla邮箱smtp_password的配置
三.安装和配置时出现的问题以及解决方案:
因为我配置bugzilla所在的环境是win7 32位,所以,选择下面的工具。
Bugzilla-5.0.6 (官网选择最新的版本下载就行)
mysql-5.6.51-win32
ActivePerl-5.10.1.1007-MSWin32-x86-291969
(建议选择5.10以上版本)
Bugzilla汉化包
(建议不汉化,目前测试汉化包在使用时,Bugzilla的部分功能实现会出现乱码,如果英语阅读困难,可以选择浏览器的翻译功能进行翻译)
IIS组件
(win7电脑一般自带,如果不自带,下载就行,这个工具也可以替换为Apache)
qq邮箱一个
(后续需要用来配SMTP服务,当然,如果你有SMTP服务器更好)
老生常谈,配置数据库的基本步骤首先编写my.ini配置文件,其次配置环境变量,最后初始化数据库。
这里的basedir和datadir按照自己放mysql和data的地址来写
net start mysql //启动数据库
mysql -uroot -p //登录数据库
create database bugs;//创建数据库bugs
create user bugs@localhost;//创建一个用户bugs
grant all on bugs.*to bugs@'localhost';//为用户bugs授权
flush privileges;//刷新用户权限
quit;//退出
到此Mysql的安装和配置结束
解压ActivePerl的安装包,点击安装包,一直点击下一步,安装到C盘
安装好后,配置环境变量,这里一定要进行perl的环境变量的配置,否则后面的配置bugzilla的过程中perl将无法使用
解压bugzilla安装包到自己指定的路径
打开命令行客户端
cd 进入 bugzilla的bin目录
用perl 运行 checksetup.pl脚本
逐一检查bugzilla运行所必需的各个模块,逐个用ppm命令安装
ppm install 所有提示的包后
再次 用perl 运行 checksetup.pl
最后会生成一个配置文件localconfig,在该文件配置中需要注意配置以下几个选项:在bugzilla目录下生成localconfig文件,再修改localconfig如下:
将$db_host改成mysql server端的服务器;
$db_user = 'bugs';改成登录bugzilla数据库的用户名;
$db_pass = '';改成登录bugzilla数据库的用户的密码;
$db_port = 0;改成$db_port = 3306; ----mysql安装默认端口是3306;
$index_html = 1;
修改完成后,保存.
配置完后保存 再次在命令行端口运checksetup.pl脚本,将会生成和数据库有关的数据表,并提示输入SMTP邮件服务器主机名、管理员邮件地址、管理员真实姓名和密码(这里填写的用户信息可以直接作为管理员登陆后续配好的bugzilla):
到此 bugzilla的安装就完成了
1.安装IIS
Internet Information Services(IIS,互联网信息服务),是由微软公司提供的基于运行Microsoft Windows的互联网基本服务。
Windows7上IIS的安装方法是,打开“控制面板->程序”:
点击“打开或关闭Windows功能”,弹出下面的对话框:
选中左边“角色”,然后点击右边“添加角色”选中“Web服务器(IIS)”,点击下一步。在“万维网服务->应用程序开发功能”节点中选中CGI和ISAPI扩展两个选项之外,其他全部采用默认设置,直到完成。安装完成后,服务器管理器的“角色”下面就出现了IIS,如下图所示:
2.配置IIS
配置IIS之前,首先需要打开“Internet信息服务(IIS)管理器”。Windows7上的打开路径如下:
“控制面板->系统和安全->管理工具-> Internet信息服务(IIS)管理器”Windows Server2008 R2上的打开路径如下:“开始->管理工具->Internet信息服务(IIS)管理器”
虽然打开路径各不相同,但是打开之后的界面是完全一样的,如下图所示:
IIS的配置在Windows7和Windows Server2008 R2上也都是一样的。需要两个步骤:
a)添加bugzilla的虚拟目录;
首先添加虚拟目录。打开“Internet信息服务(IIS)管理器”,展开左右所有节点,在“Default Web Site”的右键菜单上,选择“添加虚拟目录”:
弹出如下的对话框,分别填入bugzilla和bugzilla的根目录,然后点击确定。
在“Default Web Site”下面就出现了bugzilla的文件夹,如下图所示:
b)添加cgi文件的映射;
接下来开始添加cgi文件映射。在上图中,选中“Default Web Site”,就会出现“Default Web Site主页”,双击“处理程序映射”,显示如下:
点击最右边“操作”视图中的“添加脚本映射…”,弹出如下图所示的对话,请求路径填写“*.cgi”,可执行文件填写“C:\Perl64\bin\perl.exe “–T %s %s,填写一个“CGI”:
然后点击“请求限制”,在弹出的对话框中选择“谓词”标签,选中“下列谓词之一”单选框,填入“GET,HEAD,POST”,点击确定
配置完后会出现一条如下的映射:
到此,IIS的安装和配置就全部完成了,此时打开浏览器,输入配置的网址,就会出现Welcome to Bugzilla的界面了,如下图所示:
登录之前在checksetup设置的账号后点击用户
点击参数设置:
按照如下配置:
前面步骤和基本步骤相同,只是在点击parameter界面后点击邮箱设置
点击邮箱设置:
mail_delivery_method:选择SMTP
mailfrom:填写自己之前配置的账号邮箱(这里我配置的是自己的qq邮箱)
smtpserver:填写smtp.qq.com:465
smtp_username:这里必须同mailfrom的账号邮箱一致
smtp_password:这个密码的配置大有来头,详细看下面的smtp密码配置
因为我选的服务器是smtp.qq.com,Bugzilla邮箱smtp_password的密码是在qq邮箱中的邮箱设置->账号->开启SMTP服务,就会需要我们发一个短信到相对于的账号,发完后会获得一个授权码,这个密码就是smtp_password,将密码填入之前邮箱设置的smtp_password的一栏中即可。
点击开启后会弹出下面页面
发送信息成功后,点击我已发送,这里的授权码就是smtp_password的密码
配置完emil,创建一个新用户,用管理员用户new一个新的bug,然后cc到新用户,看新用户是否收到邮箱,如果收到邮箱则说明smtp配置成功。
使用bugzilla时,打开mybugs时出现乱码并显示undef error -cannot determine local time zone
报错
打开bugzilla文件夹,进入
进入Util包后修改:
smtpserver .......... cannot connect
端口选择问题:
25,465,587
在使用时,如果一个端口无法使用就换另外一个
出现SSL服务失败
Can't locate object method "quit" via package "Net::SMTP::SSL" at Bugzilla/Config/Common.pm line 365
用ppm下载如下包
如果用ppm下载不了NET-SMTP-SSL,那就用cpan来安装
如何汉化Bugzilla:
将汉化包解压解压到cn文件夹,将整个文件目录 cn 拷贝至 Bugzilla 的子目录 template下;然后以管理员身份登录Bugzilla,点击页脚的 Parameters(系统参数设置)链接,将 languages 一项的值改为 cn,保存,则以后见到的Bugzilla页面就是汉语页面了。如果想返回英文界面,将 cn 改回 en 即可。为保证向后兼容,汉化的文件全部存为 UTF-8 格式。但不管你是否汉化Bugzilla,为强迫Bugzilla采用UTF-8来处理字符串,避免Bugzilla偶然出现的乱码,强烈建议大家将文件 安装目录>\Bugzilla\CGI.pm 的第55行改为 $self->charset('UTF-8')。汉化包的具体下载可以在http://bugzilla.org/download.html 里找到相应的bugzilla汉化包。
bugzilla在功能的使用时出现用户权限不够:
打开服务管理器,右键编辑权限
点击安全,点击编辑,进行添加,添加一个Everyone的用户,打开所有权限,给Bugzilla修改权限也是同样的步骤。