Installing a Website Search Engine on the Cloud in 10 minutes

One of the most overlooked aspects of a website is the search engine. Even though most CMS implementations come with a built-in search engine, satisfaction remains very low on these limited functionality out-of-the-box CMS based search engines. Most website owners seem to live with the bad implementation or turn to Google Custom Site Search. Google’s free custom search limits the website owners ability to connect content and context with the user’s intent due to the limited flexibility in customizing the search engine for their unique needs. This blog post is intended to show how simple it is to spin your own search engine on the cloud for $20 a month and in approximately 10 minutes by deploying SearchBlox on the Digital Ocean cloud platform. While SearchBlox is already certified to be used on Amazon EC2 and Rackspace Cloud, we chose Digital Ocean for this tutorial as they have a made it dead simple to create a cloud server (called droplet in Digital Ocean’s language).

Step 1 – Creating your Cloud Server

    If you don’t already have an account on Digital Ocean, please sign-up.
    Once you are logged in, please click on the Create Droplet button to initiate the cloud server creation process.

  • Enter Hostname as Search or Websitesearch to uniquely identify the cloud server
  • Select the box which says “2GB / 2 CPUS 40GB SSD DISK 3TB TRANSFER” for the server size
  • Select Region as “New York 1”
  • Select CentOS as the Linux distribution and image CentOS 6.5 x64
  • Click the Create Droplet button to create the new server instance

DigitalOcean Control Panel

    You will receive an email with the IP address, username and password of the server you created.

Step 2 – Installing SearchBlox

    Once you receive your root password by email, you are ready to install SearchBlox by logging in to the server. Login by going to the Access tab on the Droplet and then on to Console Access for browser based access to the server

DigitalOcean Server Access

    After you login by using your username and provided, type in the following commands.

  • yum install wget
  • yum install nano
  • cd /opt
  • wget http://d2fco3ozzrfhhd.cloudfront.net/searchblox_unix64.tar.gz
  • gzip -d searchblox_unix64.tar.gz
  • tar -xvf searchblox_unix64.tar
  • nano /etc/rc.d/rc.local
  • Add the following line to the last line in the file rc.local and save the file using nano
    nohup ./opt/searchblox/startSearchBlox > /opt/searchblox/console.log &
  • sudo reboot now
  • These commands install SearchBlox, add SearchBlox to the startup script and reboot the cloud server.

Step 3 – Using SearchBlox

Once the server is rebooted, give about 30 seconds before accessing SearchBlox’s admin console at http://IPaddress:8080/searchblox/admin/main.jsp or accessing the search results page at http://IPaddress:8080/searchblox/plugin/index.html

You can login to the SearchBlox Admin console after accepting the license agreement at the bottom of the screen. The username and password are both ‘admin’ for SearchBlox admin console. Please change the password after you login. Click on the HttpCollection and setup your website address for indexing. Please visit our Wiki for instructions on settings for the HTTP collection.

SearchBlox makes it as easy as possible to install and configure your website search using a cloud platform like Digital Ocean. The website search engine is the most important tool for listening to your visitors through the reporting and analytics provided by SearchBlox. You can see what your visitors are searching for and clicking on as also enable them to provide their email address for keyword alerts which also helps you cater to their website information needs. Contact us if you have any questions about this cloud search setup or any aspect of SearchBlox!