纯绿色安装bugzilla

bigtall最近喜欢上了绿色软件,主要原因是它可以最大限度地保证不拖累我的机器运行。因为bigtall个人工作的需要,在自己机器上安装了一个svn的服务器,把七七八八的代码全部塞到了里边,装起来很简单,下载zip包直接解压缩就可以了,不过这是题外话,跟本文无关。

我用的操作系统是vista旗舰版,要绿色安装bugzilla,首先需要下载如下的东西:

请允许bigtall给大家解释一下我们要下载的东西:

  1. xampp是一个绿色安装版的集合,里边包括了apache、mysql、php、perl、myphpadmin、ftp server、mail server等等,xampp是我们绿色软件发烧友装机必备的工具,老少咸宜,童叟无欺,安装简单,使用方便,是居家编程必备良友!
  2. 以上的xampp并不包含完整的perl环境,所以我们需要下载一个额外的包perl addon。
  3. bugzilla环境,就是我们本文的主要目的了。(如果有人看不懂,请举手!)
  4. 国内朋友翻译的中文包,可惜版本太老了,会出现一些错误,有人想要继续汉化的请加油!

注意:目前xampp的最新版是1.6.4,但是请不要下载,因为其中的apache2.2.6包含了一个严重的bug,导致所有fast cgi接口的程序都无法使用,包括我们要用的perl。

随后就是安装步骤了,请大家跟bigtall一起按照步骤继续:

  1. 解压缩xampp win32 1.6.3a到你指定的目录,这里bigtall的目录是d:\tools\net\xampp。下文的路径都按照bigtall的实际安装路径,请大家操作时候注意更改。
  2. 解压缩xampp perl addon到同一个目录
  3. 运行目录下面的setup_xampp.bat,它会遍历里边各个部件的配置文件,把里边的路径修改成正确的路径。
  4. 启动apache_start.bat和mysql_start.bat,然后浏览器中访问http://localhost,你可以看到正常的页面,并且phpinfo和perlinfo页面都可以返回正确的内容的话。恭喜你,第一阶段已经完成了。如果你愿意用phpMyAdmin的话,记得去D:\tools\net\xampp\phpMyAdmin\config.inc.php文件中修改一下mysql的root用户的密码(默认没有密码)。
  5. 解压缩bugzilla到你指定的目录,这里bigtall解压缩到d:\tools\net\bugzilla中。
  6. 接下来我们开始配置d:\tools\net\xampp\apache\conf\httpd.conf,在文件的最后一行加入
                                    Include conf/extra/apache-bugzilla.conf
    然后生成一个新文件D:\tools\net\xampp\apache\conf\extra\apache-bugzilla.conf,输入如下的内容:

    Alias /bugzilla "d:/tools/net/bugzilla"
    <Directory "d:/tools/net/bugzilla">
        Options ExecCGI All
        AllowOverride All
        ScriptInterpreterSource Registry-Strict
        Order allow,deny
        Allow from all
    </Directory>

    当然也可以把这个内容直接放到httpd.conf中的。

  7. 修改mysql的配置文件D:\tools\net\xampp\mysql\bin\my.cnf,把包含skip-innodb的行注释掉(行首加#符号即可),然后把随后的innodb_开头的5行取消注释(把行首的#去掉),set-开头的5行取消注释。保存修改。
  8. 切换到mysql\bin目录下,运行命令mysql --user=root -p mysql,并在mysql>提示符下依次输入如下的命令:
    create database bugs;
    grant all privileges on bugs.* to 'bugs'@'localhost' identified by 'sockmonkey';
    flush privileges;
    quit

    然后重新用命令mysql --user=root -p mysql,在mysql>提示符下依次输入
    set password for 'bugs'@'localhost' = OLD_PASSWORD('sockmonkey');
    quit

    本步骤也可以通过phpMyAdmin来进行。
  9. 用notepad创建文件cgi.reg,输入如下内容之后,用regedit导入:

    Windows Registry Editor Version 5.00

    [HKEY_CLASSES_ROOT\.cgi]

    [HKEY_CLASSES_ROOT\.cgi\Shell]

    [HKEY_CLASSES_ROOT\.cgi\Shell\ExecCGI]

    [HKEY_CLASSES_ROOT\.cgi\Shell\ExecCGI\Command]
    @="d:\\tools\\net\\xampp\\perl\\bin\\perl.exe -T"

  10. 打开命令行cmd.exe,我们准备开始补全bugzilla所需的perl模块。依次运行如下的命令:

    set path=d:\tools\net\xampp\perl\bin;%path%
    ppm rep add Bugzilla http://landfill.bugzilla.org/ppm
    ppm install AppConfig
    ppm install TimeDate
    ppm install DBI
    ppm install DBD-mysql
    ppm install Template-Toolkit
    ppm install MailTools
    ppm install GD
    ppm install Chart
    ppm install GDGraph
    ppm install Net::LDAP
    ppm uninstall PatchReader
    ppm install http://landfill.bugzilla.org/ppm/PatchReader.ppd

    如果运行出现ppm install failed字样,则运行ppm.bat打开图形界面,选择安装失败的模块重新安装一下即可。

  11. 将当前目录切换到bugzilla所在目录,运行perl checksetup.pl检查所需的perl模块是否都安装成功。这里要注意的是checksetup.pl结果报告中

    ***********************************************************************
    * REQUIRED MODULES                                                    *
    ***********************************************************************

    **********************************************************************
    * OPTIONAL MODULES                                                   *
    **********************************************************************

    的区别,bigtall就是因为没看清,结果为了一个可选的PerlMagick模块忙乎了半天。我们只需要安装必要的模块。

  12. 在所有bugzilla所需的模块都安装好之后,checksetup.pl会在bugzilla目录下生成一个localconfig文件。修改localconfig中的$db_name,$db_user和$db_pass为你在步骤8设置的内容,这里应该是"bugs","bugs"和'sockmonkey'。
  13. 使用xampp目录下的apache_stop.bat和mysql_stop.bat停止apache和mysql,然后再重新用apache_start.bat,mysql_start.bat和mercury_start.bat分别启动apache,mysql和mercury邮件服务。
  14. 在mercury的界面菜单configuration/manage local user界面中添加用户bugzillaAdmin。
  15. 继续运行perl checksetup.pl直到报告安装成功。当脚本询问管理员电子邮件的时候,输入bugzillaAdmin@127.0.0.1
  16. 浏览器访问http://localhost/bugzilla,此时应该出现bugzilla的登录页面,用用户名bugzillaAdmin@127.0.0.1登录即可。

安装时候可能会遇到如下的问题:

  1. 安装perl模块PathTools(其他模块也有可能)的时候可能会出现如下错误提示:ppm install failed: File conflict; package File-Spec already provide
    /perl/site/lib/File/Spec/Functions.pm
    解决方法就是进入ppm图形界面,把模块File-Spec删除之后重新安装PathTools模块。
  2. 访问http://localhost/bugzilla的时候出现错误内容,提示couldn't create child process: 720003: index.cgi ,解决方法参考步骤9。
  3. 如果出现访问时候报告500错误,apache日志中出现“Error reading ./data/params: Bad file descriptor at Bugzilla/Config.pm line 315.”字样,则把bugzilla/data/params文件删除掉,重新运行perl checksetup.pl即可修复,修复之后系统会提示需要重新设置几个主要参数。

 

参考文献:

posted on 2007-10-25 12:37  老翅寒暑  阅读(5765)  评论(5编辑  收藏  举报

导航