Skip to main content

Installing BibleSuperSearch on Debian

Basic software

  • Apache2
  • MariaDB
sudo apt update && sudo apt install apache2 mariadb-server

Laravel dependencies

reference: https://shape.host/resources/laravel-setup-debian-12-tutorial

Install dependencies:

sudo apt install php php-curl php-bcmath php-json php-mysql php-mbstring php-xml php-tokenizer php-zip

Bible SuperSearch source

Download API: https://www.biblesupersearch.com/downloads/

Download client: https://sourceforge.net/projects/biblesuper/files/

Extract into:

/var/www/html/biblesupersearch_api/

/var/www/html/biblesupersearch_client/

AssumingThis assumes you're using the default site, otherwise copy into the pathdirectory for whichever Apache 'site' is enabledenabled.

Configure Apache

Edit apache.conf:

sudo nano /etc/apache2/apache2.conf

Change AllowOverride from None to All:

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
</Directory>

Configure PHP:

sudo a2enmod php8.2 # change 8.2 to your version
sudo a2enmod rewrite
sudo systemctl restart apache2

Restart Apache:

sudo systemctl restart apache2

Configure MariaDB

references:

sudo mysql_secure_installation
  • Enter current password for root (enter for none): Leave blank, press enter
  • Switch to unix_socket authentication [Y/n] n Not necessary, enter n
  • Change the root password? [Y/n] n Should not change, enter n
  • Enter Y (default) for all remaining questions

Start the DB prompt:

sudo mariadb

Create an admin account (set my_admin_password):

GRANT ALL ON *.* TO 'admin'@'localhost' IDENTIFIED BY '<my_admin_password>' WITH GRANT OPTION;

Create a biblesupersearch user (set my_password):

CREATE USER 'biblesupersearch'@'localhost' IDENTIFIED BY '<my_password>';

Create a biblesupersearch database:

CREATE DATABASE biblesupersearch;

Grant privileges:

GRANT ALL PRIVILEGES ON biblesupersearch.* TO 'biblesupersearch'@'localhost';

Flush privileges:

FLUSH PRIVILEGES;

Exit the DB prompt:

exit

Configure Bible SuperSearch

Change ownership recursively to the httpd user (www-data) for biblesupersearch_api and biblesupersearch_client directories:

cd /var/www/html
sudo chown -R www-data biblesupersearch_*

Copy .env.example to .env and edit:

sudo cp .env.example .env
sudo nano .env

Update the following lines:

APP_URL=http://bible.local/biblesupersearch_api/ # or whatever your root path is
DB_DATABASE=biblesupersearch
DB_USERNAME=biblesupersearch
DB_PASSWORD=<my_password> # whatever database password was configured