Prosper202 with Nginx, MySQL and PHP-FPM on Ubuntu
Prosper202 provides top digital marketers with leading edge on-premise marketing dashboard and attribution tool for tracking, optimizing and scaling out digital marketing campaigns of all sizes!
The following are the minimum system requirements for Prosper202:
- PHP version 5.4 or greater.
- MySQL version 5.6 or greater.
- MySQLi extension enabled in PHP
INSTALLATION
The first thing you need to do is to upgrade all your system software to the latest version available: Run the following command:
# apt-get update && apt-get -y upgrade
Once the update process is completed you can install Nginx on your Ubuntu using the following command:
# apt-get install nginx
Start Nginx and enable it on system boot:
# service nginx start
# update-rc.d nginx enable
The next thing you need to do is to install MySQL 5.6 on your server. Use the following command:
# apt-get install mysql-server-5.6 mysql-client-5.6
Proceed with the MySQL secure installation:
# mysql_secure_installation
Follow the on-screen messages to configure MySQL:
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Set root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!
Remove anonymous users? [Y/n] y
... Success!
Disallow root login remotely? [Y/n] y
... Success!
Remove test database and access to it? [Y/n] y
- Dropping test database...
ERROR 1008 (HY000) at line 1: Can't drop database 'test'; database doesn't exist
... Failed! Not critical, keep moving...
- Removing privileges on test database...
... Success!
Reload privilege tables now? [Y/n] y
... Success!
Start the MySQL service and enable it on system boot:
# service mysql start
# update-rc.d mysql enable
The next component that needs to be installed is PHP-FPM. Install PHP-FPM using the command below:
# apt-get install php5-fpm php5-mysql
Create a directory for Prosper202:
# mkdir /var/www/prosper202
Now, download the latest release of Prosper202 from http://prosper.tracking202.com/download and unzip the downloaded file in the '/var/www/prosper202/' directory on your server. Or, use the following command to download and unzip the Prosper202 installation in the '/var/www/prosper202/' directory:
# cd /var/www/prosper202/ && wget http://my.tracking202.com/clickserver/download/latest && unzip latest
Once you do that, change the ownership of the files:
# chown www-data: -R /var/www/prosper202
Create an Nginx configuration file for Prosper202:
nano /etc/nginx/sites-available/yourdomain.com
Enter the following content:
server {
#listen 80; ## listen for ipv4; this line is default and implied
#listen [::]:80 default ipv6only=on; ## listen for ipv6
root /var/www/prosper202;
index index.php index.html;
# Make site accessible from http://localhost/
server_name www.yourdomain.com yourdomain.com;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to index.html
try_files $uri $uri/ /index.html;
}
error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/www;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
# NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
# With php5-cgi alone:
# fastcgi_pass 127.0.0.1:9000;
# With php5-fpm:
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
}
Make sure that you replace yourdomain.com with your actual domain name.
Enable the configuration and restart the Nginx service:
# ln -s /etc/nginx/sites-available/yourdomain.com /etc/nginx/sites-enabled/yourdomain.com
# service nginx restart
Since Prosper202 stores its data into a MySQL database, you need to create a database for it. Log into MySQL as root:
# mysql -u root -p
Create a new database for Prosper202, a database user and set up a password using the commands below:
mysql> CREATE DATABASE prosper202DB;
mysql> GRANT ALL PRIVILEGES ON prosper202DB.* TO 'prosper202'@'localhost' IDENTIFIED BY 'YoUrPaSsWoRd';
mysql> FLUSH PRIVILEGES;
mysql> \q
The final step is to open your favorite web browser and enter your domain name into the search bar. You should follow the on-screen instructions and fill
Once you have finished the wizard everything should be working perfectly.
If you get a whole bunch of weird error text about time zones above the login screen you need to edit the connect.php file in the 202-config folder.
Insert this at the top of the file, below the opening PHP tag:
date_default_timezone_set(‘Europe/London’);
So there we go, enjoy your Login Panel
www.hackthesec.co.in