2017 © Pedro Peláez
 

project shurl

PHP based URL shortener

image

ricwein/shurl

PHP based URL shortener

  • Sunday, August 20, 2017
  • by ricwein
  • Repository
  • 1 Watchers
  • 1 Stars
  • 3 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 2 Versions
  • 0 % Grown

The README.md

shurl

Another PHP based URL shortener., (*1)

Install

project

To create a new shurl instance, the project can be initialized through composer, just run the following command:, (*2)

composer create-project ricwein/shurl -s dev

Database

Initializing the Database structure can be done two ways. Either run the static queries from resources/database/database.sql, or use the init commandline tool., (*3)

This tool requires you, to first setup your wished database configuration! This can be done, as described in Configuration. A valid Database-user is required, and needs either: the database to be already existing, or rights to create a new one., (*4)

bin/shurl init

Since this tool, acknowledges your database-configuration, the resulting database-structure is customizable! use table-prefixes, custom charsets, or even another database name!, (*5)

Configuration

The default configuration is stored in src/Config/Config.php $__config Array, but can be overwritten by adding a config-file at config/config.yml. It should has the following format:, (*6)

---
database:
  username: usernamehere
  prefix: shurl_

cache:
  enabled: true

This way it's possible, to override each single setting., (*7)

You can copy an example file to start with, (*8)

cp config/example.config.yml config/config.yml

rootURL

For some features, shurl need to know your webservers Domain and Path to shurl. This URL can be set inside the described configfile:, (*9)

---
rootURL: https://fancy.url

Adding a new URL

Adding a new URL to the shortener Server is done with the bundled CLI tool. Just run bin/shurl url:add, and follow the instructions. For more Informations see bin/shurl url:add --help., (*10)

Remove an URL

Removing an URL from the list, is as easy as adding one. Execute bin/shurl url:remove from your command line should do the job., (*11)

List available URLs

A list of all currently available URls can be accessed through: bin/shurl url:show, (*12)

Routes

There are several different routes, which are supported by shurl., (*13)

  • / The root displays a welcome message
  • /{slug} redirects to a given url
  • /preview/{slug} shows a resolved-URL preview
  • /api/{slug} exposes a simple JSON api (GET Method), which provides access to the resolved URL
[{
    "slug": "shurl",
    "original": "https:\/\/s.ricwein.com"
}]

The Versions