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
rhn_register
). - If using RHEL or CentOS, enable EPEL by following the instructions at EPEL/FAQ#howtouse
- Add the same repositories as mentioned in the AutoQA installation guide.
Install the Package
Once the proper yum repositories are configured, use the yum
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;
httpd
Change the YOURLS Location
The default location for YOURLS is http://your_server/yourls
. For AutoQA purposes we want to change /yourls
directory to /report
directory. The rest of this guide will reflect that.
The httpd configuration file is located at /etc/httpd/conf.d/yourls.conf
. Edit that file to match:
Alias /report /usr/share/yourls <Directory /usr/share/yourls> AllowOverride All </Directory>
There is a change in configuration files in Apache 2.4, therefore, on Fedora 18 edit /etc/httpd/conf.d/yourls.conf
to match:
Alias /report /usr/share/yourls <Directory /usr/share/yourls> Options All AllowOverride All Require all granted </Directory>
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 /usr/share/yourls/.htaccess
to contain:
# BEGIN YOURLS <IfModule rewrite_module> RewriteEngine On RewriteBase /report/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /report/yourls-loader.php [L] </IfModule> # 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 /etc/yourls/config.php
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', 'your db user name' ); /** MySQL database password */ define( 'YOURLS_DB_PASS', 'your db password' ); /** 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( 'username' => 'password', 'username2' => 'password2', );
Final Configuration
To finish the configuration, restart httpd: systemctl restart httpd.service
.
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/.