Linux中國

在 FreeBSD 10.2 上如何通過配置 Apache 和 SSL 安裝 Bugzilla

在本教程中,我們將安裝 bugzilla 5.0 ,採用 apache 作為 Web 伺服器,並為它啟用 SSL,然後在 freebsd 10.2 上安裝 mysql 5.1 來作為資料庫系統。

準備

  • FreeBSD 10.2 - 64位
  • 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

Configure MySQL Password

以上步驟都完成之後,我們用 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

Creating Database for 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

將以下配置粘貼進去:

<VirtualHost *:80>
ServerName mybugzilla.me
ServerAlias www.mybuzilla.me
DocumentRoot /usr/local/www/bugzilla
Redirect permanent / https://mybugzilla.me/
</VirtualHost>

Listen 443
<VirtualHost _default_: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

<Directory "/usr/local/www/bugzilla">
AddHandler cgi-script .cgi
Options +ExecCGI
DirectoryIndex index.cgi index.html
AllowOverride Limit FileInfo Indexes Options
Require all granted
</Directory>
</VirtualHost>

保存並退出。

上述都完成之後,為 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 = &apos;bugzilladb&apos;;

#第60行
$db_user = &apos;bugzillauser&apos;;

#第67行
$db_pass = &apos;bugzillauser@&apos;;

保存並退出。

然後再次運行 "checksetup.pl":

./checksetup.pl

你會收到輸入郵箱名和管理員賬號的提示,你只要輸入你的郵箱、用戶名和密碼就行了。

Admin Setup

最後,我們需要把安裝目錄的屬主改成 "www",然後用服務命令重啟 apache:

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

現在 Bugzilla 已經安裝好了,你可以通過訪問 mybugzilla.me 來查看,並且將會重定向到 https 連接。

Bugzilla 首頁:

Bugzilla Home

Bugzilla admin 面板:

Bugzilla Admin Page

結論

Bugzilla 是一個基於 web 的應用,並能幫助你管理軟體開發,它用 perl 開發並以 MySQL 作為資料庫系統。Bugzilla 幫助 mozilla、redhat、gnome 等公司完成軟體開發工作。Bugzilla 有很多功能並易於配置和安裝。

via: http://linoxide.com/tools/install-bugzilla-apache-ssl-freebsd-10-2/

作者:Arul 譯者:ZTinoZ 校對:Caroline

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國