FreeBSD下Bugzilla安装教程
Bugzilla 这个名字,在软件开发和测试领域广为人知。它是一款基于 Web 的开源缺陷跟踪系统与测试工具,由 Mozilla 团队开发,采用 Mozilla 公共许可证(MPL)进行授权。诸如 Mozilla、红帽公司、GNOME 等知名技术团队,在日常开发流程中都离不开它。该项目最早由 Terry Weissman 于 1998 年使用 Perl 语言编写,后端数据库采用 MySQL。简单来说,它是一款协助团队高效管理软件开发流程的服务器软件,功能丰富且数据库经过高度优化。

本次教程的目标是:在 FreeBSD 10.2 系统上部署 Bugzilla 5.0,采用 Apache 作为 Web 服务器并启用 SSL 加密,后端数据库选择 MySQL 5.1。按照完整流程操作后,你会发现这套组合在实际生产环境中运行非常稳定可靠。
准备
FreeBSD 10.2 64位系统,Root 权限为 root
更新系统
首先通过 SSH 登录到 FreeBSD 服务器,接着执行系统更新命令:
sudo su
freebsd-update fetch
freebsd-update install
安装并配置 Apache
这一步使用 pkg 命令从 FreeBSD 软件仓库中安装 Apache,然后编辑 httpd.conf 配置文件,开启 SSL 与 CGI 支持。安装 Apache:
pkg install apache24
进入 Apache 目录,利用 nano 编辑配置文件:
cd /usr/local/etc/apache24
nano -c httpd.conf
需要取消以下几行前面的注释(对应行号已在注释中标注):
- 第70行:
LoadModule authn_socache_module libexec/apache24/mod_authn_socache.so - 第89行:
LoadModule socache_shmcb_module libexec/apache24/mod_socache_shmcb.so - 第117行:
LoadModule expires_module libexec/apache24/mod_expires.so - 第141行:
LoadModule ssl_module libexec/apache24/mod_ssl.so(启用SSL) - 第162行:
LoadModule cgi_module libexec/apache24/mod_cgi.so(支持CGI) - 第174行:
LoadModule rewrite_module libexec/apache24/mod_rewrite.so(启用重写) - 第219行:
ServerName 127.0.0.1:80(配置服务器名称)
保存并退出。接下来,从 FreeBSD 仓库安装 mod_perl 并启用它:
pkg install ap24-mod_perl2
再次编辑 httpd.conf,在大概第175行添加一行:
LoadModule perl_module libexec/apache24/mod_perl.so
保存退出。在启动 Apache 之前,先用 sysrc 设置开机自启动:
sysrc apache24_enable=yes
service apache24 start
安装并配置 MySQL 数据库
后端数据库选用 MySQL 5.1,同时需要安装对应的 Perl 模块。执行:
pkg install p5-DBD-mysql51 mysql51-server mysql51-client
设置 MySQL 开机启动,然后配置 root 密码:
sysrc mysql_enable=yes
service mysql-server start
mysqladmin -u root password aqwe123
注意:此处 MySQL 密码设置为 aqwe123。

上述工作完成后,使用 root 账户登录 MySQL shell,为 Bugzilla 创建专用数据库和用户:
mysql -u root -p
password: aqwe123
创建数据库和用户:
create database bugzilladb;
create user bugzillauser@localhost identified by 'bugzillauser@';
grant all privileges on bugzilladb.* to bugzillauser@localhost identified by 'bugzillauser@';
flush privileges;
\q

至此,数据库 bugzilladb、用户名 bugzillauser、密码 bugzillauser@ 均已就绪。
生成新的 SSL 证书
在 Apache 的配置目录下创建 ssl 文件夹,用于存放自签名证书:
cd /usr/local/etc/apache24/
mkdir ssl; cd ssl
使用 OpenSSL 生成证书文件并设置权限:
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /usr/local/etc/apache24/ssl/bugzilla.key -out /usr/local/etc/apache24/ssl/bugzilla.crt
chmod 600 *
配置虚拟主机
Bugzilla 计划安装在 /usr/local/www/bugzilla 目录下,为此需要创建虚拟主机配置。进入 Apache 目录,新建 vhost 文件夹:
cd /usr/local/etc/apache24/
mkdir vhost; cd vhost
创建虚拟主机配置文件 bugzilla.conf:
nano -c bugzilla.conf
粘贴以下内容:
ServerName mybugzilla.me
ServerAlias www.mybuzilla.me
DocumentRoot /usr/local/www/bugzilla
Redirect permanent / https://mybugzilla.me/
Listen 443
ServerName mybugzilla.me
DocumentRoot /usr/local/www/bugzilla
ErrorLog "/var/log/mybugzilla.me-error_log"
CustomLog "/var/log/mybugzilla.me-access_log" common
SSLEngine On
SSLCertificateFile /usr/local/etc/apache24/ssl/bugzilla.crt
SSLCertificateKeyFile /usr/local/etc/apache24/ssl/bugzilla.key
AddHandler cgi-script .cgi
Options +ExecCGI
DirectoryIndex index.cgi index.html
AllowOverride Limit FileInfo Indexes Options
Require all granted
保存退出。然后为 Bugzilla 创建安装目录,并在 httpd.conf 末尾引入虚拟主机配置:
mkdir -p /usr/local/www/bugzilla
cd /usr/local/etc/apache24/
nano -c httpd.conf
在文件末尾添加:
Include etc/apache24/vhost/*.conf
保存退出。用 apachectl configtest 测试配置是否正确,然后重启 Apache:
apachectl configtest
service apache24 restart
安装 Bugzilla
既可以通过源码手动安装,也可以直接从 FreeBSD 仓库中用 pkg 安装。这里选择后者:
pkg install bugzilla50
完成后,进入 Bugzilla 安装目录,安装所有必需的 Perl 模块:
cd /usr/local/www/bugzilla
./install-module --all
这一步会比较耗时,请耐心等待。接着执行 checksetup.pl 生成配置文件 localconfig:
./checksetup.pl
此时会看到数据库配置相关的错误提示,因为默认配置需要调整。用 nano 编辑 localconfig 文件:
nano -c localconfig
找到并修改以下三行:
- 第57行:
$db_name = 'bugzilladb'; - 第60行:
$db_user = 'bugzillauser'; - 第67行:
$db_pass = 'bugzillauser@';
保存退出,再次运行 checksetup.pl:
./checksetup.pl
这时会提示输入管理员账号信息,按要求输入邮箱、用户名和密码即可。

最后一步,将安装目录的所有者改为 www,并重启 Apache:
cd /usr/local/www/
chown -R www:www bugzilla
service apache24 restart
至此,Bugzilla 已安装完成。现在可以通过浏览器访问 mybugzilla.me,它会自动重定向到 HTTPS 连接。以下是首页展示:

Bugzilla 管理面板:

结论
Bugzilla 是一款基于 Web 的应用,能够高效地协助团队管理软件开发流程。它使用 Perl 开发,以 MySQL 作为数据库系统,被 Mozilla、Red Hat、GNOME 等众多知名团队广泛采用。其功能全面,配置与安装过程清晰明了——只要按照上述步骤操作,一套成熟的缺陷跟踪系统即可迅速部署并投入运行。
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
Mac隐藏左上角菜单栏苹果图标
先直接告诉你答案:Mac电脑屏幕左上角的那个苹果标志,既无法关闭,也无法隐藏。它是系统级的固定入口,所有macOS版本都会强制显示。苹果既没有提供开关选项,也没有预留终端命令,更不可能在系统偏好设置里让你找到隐藏开关。如果有人声称能用第三方工具或修改系统文件来删除它,千万别相信——结果很可能是系统不
Win11切换输入法的几种常用方法和快捷键设置
写文档写得正顺,突然要敲几个英文单词,或者打代码时想切回中文拼音——手指条件反射地按下Ctrl+Space,光标却纹丝不动。这种场景你应该不陌生。Windows 11其实准备了五种互不干扰的切换方式,有些连锁屏界面都能响应,关键是你得选对场景来用。下面把这五种路径挨个拆开,看完你就能找到最适合自己的
电脑开机黑屏提示未检测到启动盘修复方法
电脑开机直接黑屏,屏幕上孤零零地显示一句“No boot disk has been detected”——别紧张,这并非系统崩溃,也不是常见的蓝屏代码,而是主板在告诉你:“我没有找到硬盘。”换句话说,电脑连BIOS自检阶段都没能通过。 这属于硬件层面的硬中断,与引导损坏、系统文件丢失完全不是一回事
Windows 11更改默认音频采样率级别的详细方法
Windows 11 用户在播放音频时,偶尔会遇到爆音、杂音甚至声音动态被压缩得干瘪的情况。这种问题通常并非硬件损坏,而是系统在音频采样率设定上“擅作主张”了。例如某次系统更新后,默认格式可能被悄然重置为 24 位 192000 Hz——一个不少声卡难以稳定运行的高规格,结果导致 DMA 缓冲溢出、
Win11如何查看笔记本实时充电功率
对于笔记本充电功率的实时监测,系统自带的电池图标只能显示“正在充电”或“已充满”,却无法告知具体的瓦数。要获得实时数值,需要绕过默认界面直接读取硬件传感器。这里直接给出结论:最可靠的工具是HWiNFO64,其次是BatteryInfoView,而powercfg只能用于间接验证。无论你遇到插着65W
- 日榜
- 周榜
- 月榜
相关攻略
2026-07-02 07:30
2026-07-02 07:29
2026-07-02 07:29
2026-07-02 07:29
2026-07-02 07:29
2026-07-02 07:29
2026-07-02 07:29
2026-07-02 07:28
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程
热门话题

