Install and configure YOURLS for AutoQA

=Installation=

This documents the process of installing and configuring YOURLS for use with AutoQA.

Use the right repos
Yourls requires EPEL if running on RHEL or CentOS.

 If using RHEL or CentOS, configure the system to receive package updates using the update mechanism provided by the distribution (e.g. for RHEL, run ). If using RHEL or CentOS, enable EPEL by following the instructions at EPEL/FAQ Add the same repositories as mentioned in the AutoQA installation guide. 

Install the Package
Once the proper yum repositories are configured, use the command to install yourls and it's dependencies. yum install yourls

=Configuration=

There are three parts to configuring YOURLS: creating the database, setting up the httpd configuration and internal YOURLS configuration.

mysql
Connect to MySQL as root mysql -u root -p

Create the 'yourls' database and grant privileges to the 'yourls' user (using a password other than 'NEWPASSWORD' is highly recommended). create database yourls; GRANT ALL on yourls.* TO 'yourls'@'localhost' identified by 'NEWPASSWORD'; flush privileges;

Change the YOURLS Location
The default location for YOURLS is. For AutoQA purposes we want to change  directory to   directory. The rest of this guide will reflect that.

The httpd configuration file is located at. Edit that file to match: Alias /report /usr/share/yourls

 AllowOverride All 

Add the ModRewrite Configuration File
YOURLS relies on mod_rewrite directives in a .htaccess file in order to process the shortened URLs into the actual URL. Edit or create  to contain:

 RewriteEngine On RewriteBase /report/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /report/yourls-loader.php [L] 
 * 1) BEGIN YOURLS
 * 1) END YOURLS

YOURLS
Now that the backing services have been setup and configured, we need to set up YOURLS itself.

Open the YOURLS configuration file  and make the following changes:

MySQL Settings
The YOURLS_DB_USER, YOURLS_DB_PASS, YOURLS_DB_NAME and YOURLS_DB_HOST need to match your actual settings, set them to your actual MySQL user name, password, MySQL database name and MySQL database host.

/** MySQL database username */ define( 'YOURLS_DB_USER', 'yourls' );

/** MySQL database password */ define( 'YOURLS_DB_PASS', 'NEWPASSWORD' );

/** The name of the database for YOURLS */ define( 'YOURLS_DB_NAME', 'yourls' );

/** MySQL hostname */ define( 'YOURLS_DB_HOST', 'localhost' );

Site Configuration
The YOURLS_SITE needs to match the EXTERNAL URL of the installation that will be used by people clicking on shortened URLs.

/** YOURLS installation URL, no trailing slash */ define( 'YOURLS_SITE', 'http://your_server/report' );

YOURLS Users
Users for YOURLS are configured in the same configuration file. Add users and passwords to the configuration to match the existing example format: $yourls_user_passwords = array(       'user1' => 'password1',        'user2' => 'password2',        );

Final Configuration
To finish the configuration, restart httpd:.

Point a browser to your installation location (http://localhost/report/admin/ by default) and complete the WEB GUI based installation process. After this, the YOURLS instance is ready for business - you can access the API at http://localhost/report/yourls-api.php or the web admin GUI at http://localhost/report/admin/.