阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

在FreeBSD上安装Bugzilla

94次阅读
没有评论

共计 4202 个字符,预计需要花费 11 分钟才能阅读完成。

本文由 LinuxProbe.Com 团队成员 魏丽猿 整理发布,原文来自:Linux 就该这么学。

Bugzilla 是一款开源的 Web 应用,是一款 bug 跟踪系统和测试工具,由 mozilla 开发,并采用 Mozilla 公共许可证授权(MPL),它经常被一些高科技公司如 mozilla、红帽公司和 gnome 使用,Bugzilla 起初由 Terry Weissman 开发于 1998 年,它用 perl 语言编写,用 MySQL 作为后端数据库,它是一款旨在帮助管理软件开发的服务器软件,它有丰富的功能、高度优化的数据库等特性。
在 FreeBSD 上安装 Bugzilla
在本教程中,我们将安装 bugzilla 5.0,采用 apache 作为 Web 服务器,并为它启用 SSL,然后在 freebsd 10.2 上安装 mysql 5.1 来作为数据库系统。

准备

FreeBSD 10.2 64 位系统
Root 权限为 root

更新系统

用 ssh 登录 freebsd 服务器,并更新软件库:

sudo su
freebsd-update fetch
freebsd-update install
安装并配置 Apache

在这一步我们将使用 pkg 命令从 freebsd 软件库中安装 apache,然后在 apache24 目录下编辑 “httpd.conf” 文件,来配置 apache 以启用 SSL 和 CGI 支持, 用 pkg 命令安装 apache:

pkg install apache24

进入 apache 目录并用 nano 编辑器编辑 ”httpd.conf” 文件:

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 行,启用 SSL
LoadModule ssl_module libexec/apache24/mod_ssl.so
#第 162 行,支持 cgi
LoadModule cgi_module libexec/apache24/mod_cgi.so
#第 174 行,启用 mod_rewrite
LoadModule rewrite_module libexec/apache24/mod_rewrite.so
#第 219 行,服务器名配置
ServerName 127.0.0.1:80

保存并退出, 接着,我们需要从 freebsd 库中安装 mod perl,并启用它:

pkg install ap24-mod_perl2

启用 mod_perl,编辑 ”httpd.conf” 文件并添加 ”Loadmodule” 行:

nano -c 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 命令安装 mysql 5.1:

pkg install p5-DBD-mysql51 mysql51-server mysql51-client

现在我们要将 mysql 服务设置为开机启动,然后为 mysql 配置 root 密码, 运行以下命令来完成上述所有操作:

sysrc mysql_enable=yes
service mysql-server start
mysqladmin -u root password aqwe123

注意:这里 mysql 密码为:aqwe123
在 FreeBSD 上安装 Bugzilla
以上步骤都完成之后,我们用 root 登录 mysql shell,然后为 bugzilla 安装创建一个新的数据库和用户。
用以下命令登录 mysql shell:

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

在 FreeBSD 上安装 Bugzilla
bugzilla 的数据库创建好了,名字为 ”bugzilladb”,用户名和密码分别为 ”bugzillauser” 和 ”bugzillauser@”。

生成新的 SSL 证书

在 bugzilla 站点的 “ssl” 目录里生成新的自签名 SSL 证书, 前往 apache24 目录并在此创建新目录 “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 *
配置虚拟主机

我们将在 “/usr/local/www/bugzilla” 目录里安装 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 文件添加虚拟主机配置来启用 bugzilla 虚拟主机, 在 “apache24” 目录下运行以下命令:

mkdir -p /usr/local/www/bugzilla
cd /usr/local/etc/apache24/
nano -c httpd.conf
文末,添加以下配置:Include etc/apache24/vhost/*.conf

保存并退出, 现在用 “apachectl” 命令测试一下 apache 的配置并重启它:

apachectl configtest
service apache24 restart
安装 Bugzilla

我们可以通过下载源来手动安装 bugzilla 了,或从 freebsd 库中安装也可以, 在这一步中我们将用 pkg 命令从 freebsd 库中安装 bugzilla:

pkg install bugzilla50

以上步骤都完成之后,前往 bugzilla 安装目录并安装所有 bugzilla 需要的 perl 模块。

cd /usr/local/www/bugzilla
./install-module --all

要等到所有都完成,这需要点时间, 下一步,在 bugzilla 的安装目录中执行 “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

你会收到输入邮箱名和管理员账号的提示,你只要输入你的邮箱、用户名和密码就行了。
在 FreeBSD 上安装 Bugzilla
最后,我们需要把安装目录的属主改成 “www”,然后用服务命令重启 apache:

cd /usr/local/www/
chown -R www:www bugzilla
service apache24 restart

现在 Bugzilla 已经安装好了,你可以通过访问 mybugzilla.me 来查看,并且将会重定向到 https 连接。
Bugzilla 首页:
在 FreeBSD 上安装 Bugzilla
Bugzilla admin 面板:
在 FreeBSD 上安装 Bugzilla

结论

Bugzilla 是一个基于 web 的应用,并能帮助你管理软件开发,它用 perl 开发并以 MySQL 作为数据库系统。Bugzilla 帮助 mozilla、redhat、gnome 等公司完成软件开发工作。Bugzilla 有很多功能并易于配置和安装。

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-25发表,共计4202字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中