How to Install Bugzilla on FreeBSD

Bugzilla is a popular bug tracking system used by many organizations for software development. In this tutorial, we'll guide you through the steps to install Bugzilla on FreeBSD Latest.

Step 1: Update and Upgrade FreeBSD

Before we begin, ensure your FreeBSD system is up to date by running the following command:

sudo pkg update && sudo pkg upgrade

Step 2: Install Required Packages

Next, we need to install some required packages that Bugzilla needs to function properly. Use the following command to install these packages:

sudo pkg install apache24 mysql57-server perl5 mod_php74 php74-mysqli php74-gd

Step 3: Configure MySQL

Once the packages are installed, we need to configure MySQL. Use the following command to start the MySQL service:

sudo service mysql-server start

Then, run the following command to secure your MySQL installation:

sudo mysql_secure_installation

Follow the prompts and set a strong root password, then answer "Y" to the remaining questions.

Step 4: Create a Bugzilla User

Create a new user to run Bugzilla by running the following command:

sudo adduser -m bugzilla

Step 5: Download and Extract Bugzilla

Download the latest version of Bugzilla from https://www.bugzilla.org/download/ and extract the files to the "/usr/local/www/" directory using the following command:

sudo tar xvf bugzilla*.tar.gz -C /usr/local/www/

Step 6: Install Required Perl Modules

Next, we need to install the required Perl modules. Navigate to the Bugzilla directory and run the following command:

cd /usr/local/www/bugzilla-<version>/
sudo perl install-module.pl --all

Note: Replace <version> with the version number of the Bugzilla you downloaded.

Step 7: Configure Bugzilla

We need to configure Bugzilla before we can start using it. Navigate to the "conf" directory and copy "localconfig" file to "localconfig-orig":

cd /usr/local/www/bugzilla-<version>/conf/
sudo cp localconfig localconfig-orig

Then, edit "localconfig" file using your favorite text editor and set the following parameters:

$db_driver = 'mysql';
$db_host = 'localhost';
$db_name = 'bugs';
$db_user = 'bugs';
$db_pass = 'SecurePassword';

Replace "SecurePassword" with a strong password for your MySQL user.

Step 8: Create a MySQL Database for Bugzilla

Create a new MySQL database for Bugzilla by running the following commands:

sudo mysql -u root -p
CREATE DATABASE bugs;
CREATE USER 'bugs'@'localhost' IDENTIFIED BY 'SecurePassword';
GRANT ALL PRIVILEGES ON bugs.* to 'bugs'@'localhost';
FLUSH PRIVILEGES;
exit;

Step 9: Set File Permissions

Set the correct file permissions on the Bugzilla directory to ensure it's accessible by the web server:

sudo chown -R www:www /usr/local/www/bugzilla-<version>/
sudo chmod -R 755 /usr/local/www/bugzilla-<version>/

Step 10: Configure Apache

Finally, we need to configure Apache to serve Bugzilla. Open the Apache configuration file in your favorite text editor and add the following lines:

<VirtualHost *:80>
   ServerName bugzilla.example.com
   DocumentRoot /usr/local/www/bugzilla-<version>/
   AddHandler cgi-script .cgi
   DirectoryIndex index.cgi
   <Directory /usr/local/www/bugzilla-<version>>
      Options +Indexes +ExecCGI
      AllowOverride All
      Require all granted
   </Directory>
</VirtualHost>

Note: Replace "bugzilla.example.com" with your server's domain name and "" with the version number of the Bugzilla you downloaded.

Save the file and restart Apache to apply the changes:

sudo service apache24 restart

Step 11: Access Bugzilla

You can now access Bugzilla by navigating to "http://bugzilla.example.com" in your web browser. Follow the prompts to finish the installation and setup your Bugzilla instance.

Congratulations, you have successfully installed Bugzilla on FreeBSD Latest!

If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!