/serpinspector

Search engine position checker (Rails 4 app). Uses delayed_job and phantomjs to check positions.

Primary LanguageRubyGNU General Public License v2.0GPL-2.0

SERPInspector

Rails 4 based search engine position checker web application. Utilizes delayed_job to schedule position cheking jobs. Uses selenium-webdriver and phantomjs for search engine parsing.

Featues

  • Flexible scheduler of position checking tasks
  • Convenient reports view
  • Position change graph
  • Multi user interface

Installaton

PhantomJS

Firstly, install phantomjs from http://phantomjs.org/. Make sure the executable exists in your PATH and you can run it by typing 'phantomjs' in your terminal

PhantomJS Ubuntu installation:

sudo apt-get install phantomjs

SERPInspector app

git clone https://github.com/bogdanovich/serpinspector
cd serpinspector
bundle install

MySQL database setup

Edit configuration settings in config/database.yml:
Generate your own mysql user password and setup mysql user.

GRANT ALL ON `serpinspector_%`.* TO serpinspector@localhost 
IDENTIFIED BY '[your_generated_password]';
FLUSH PRIVILEGES;

Run tests

rake db:setup RAILS_ENV=test
RAILS_ENV=test bundle exec rspec

Production setup

rake db:setup RAILS_ENV=production
rake assets:precompile

Web Server Configuration

Nginx + passenger config:

server {
     listen       80;
     server_name  [server name] 
     access_log /[path to log]/serpinspector-access;
     error_log /[path to log]/serpinspector-error;
               
     root   /[path to app]/serpinspector/current/public;
     passenger_enabled on;
     rails_env production;
}

Delayed Job background service

chmod +x script/delayed_job

start:  
script/delayed_job start RAILS_ENV=production

stop:
script/delayed_job stop RAILS_ENV=production

Default login credentials:

login: admin
password: admin