#Redu.se Redu.se is a simple URL shortener, designed to allow the user to reduce the length of a URL that they wish to send to someone, or print out and have people be able to easily type into their web browser.
##Overview
Redu.se can be used to shorten any URL that uses a http://
or https://
scheme. It requires that the user solve a CAPTCHA for every short link they wish to generate, as to dissuade abuse of the service, and prevent spamming & bots from filling the database.
Additionally, Redu.se links can be used to redirect to any resource relative to the shortened URL. For example, consider your website is of the form: hosting.somesite.com/~myusername/
. Plug that into Redu.se and it you get a link of the form redu.se/a2c
. To direct someone to your "About" page which is located at hosting.somesite.com/~myusername/about/aboutme.html
, you can simply use redu.se/a2c/about/aboutme.html
.
Similarly, Redu.se treats GET parameters the same way. Consider you want to link to hosting.somesite.com/~myusername/?title=someTitle&date=today
. Simply using redu.se/a2c/?title=someTitle&date=today
would give you the same result.
##About Redu.se is written entirely in the Go programming language, and makes use of the following 3rd party packages:
- Web.go for a simplified web app framework
- Captcha for generating and verifying CAPTCHAs to prevent spamming
Go-MySQL-Driver as a MySQL Driver for Go's database/sql package- pq as a PostgreSQL driver for Go's database/sql package
- GoRelic for integration with NewRelic for app performance statistics
It uses a MySQL PostgreSQL database back-end to store the short links and their URL destinations.
Currently, no click statistics are kept, but this may be implemented in the future. However, if and when any statistics are gathered, it will be completely anonymous, and available to the public (statistics for specific links will not be gathered, but information about the number of short links used per day will be gathered).