Acortador de URL con PHP y MySQL

Este tutorial esta pensado en realizar paso a paso la instalación e implementación de un acortador de URL propio, escrito en PHP y MySQL.

Brien Cray es el creador de este script (PHP URL SHORTENER) con ayuda de otros colaboradores nos brinda esta fenomenal aplicación en PHP para tener nuestro propio acortador de URL, la cual dispongo a ustedes en un tutorial de instalación e implementación.

Estas son las características del script

  • Generar más de 42 mil millones de url con 5 caracteres.
  • Utilización mínima de recursos de servidor ya que cuenta con un sistema de cache.
  • Limitar accesos por IP para un uso personal y prevenir abusos de terceros.
  • Comprueba direcciones reales antes de acortarlo.
  • Utiliza redireccionamientos 301 para SEO y análisis yumminess.

Instalación

1. Primero asegurarnos de que nuestro servidor cuente con los siguientes requisitos:

Tener instalado Apache, PHP y MySQL.

2. Descargar el script PHP URL SHORTENER.

Descargar

3. Subir el contenido de la carpeta a tu servidor Web.

4. Modifica el archivo config.php con los verdaderos accesos a tu BD.

// db options
define('DB_NAME', 'your db name');
define('DB_USER', 'your db usernae');
define('DB_PASSWORD', 'your db password');
define('DB_HOST', 'localhost');
define('DB_TABLE', 'shortenedurls');

5. Correr el script shortenedurls.sql en tu BD MySQL.

CREATE TABLE `shortenedurls` (
  `id` int(10) unsigned NOT NULL auto_increment,
  `long_url` varchar(255) NOT NULL,
  `created` int(10) unsigned NOT NULL,
  `creator` char(15) NOT NULL,
  `referrals` int(10) unsigned NOT NULL default '0',
  PRIMARY KEY  (`id`),
  UNIQUE KEY `long` (`long_url`),
  KEY `referrals` (`referrals`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

7. Modifica el archivo rename.htaccess a .htaccess para que funcione.

php_flag register_globals off
php_flag magic_quotes_gpc off
php_value display_errors 0

FileETag none
ServerSignature Off

Options All -Indexes

RewriteEngine On
RewriteRule ^shorten/(.*)$ shorten.php?longurl=$1 [L]
RewriteRule ^([0-9a-zA-Z]{1,6})$ redirect.php?url=$1 [L]

6. Para utilizar el sistema de cache, deberá crear una carpeta “/cache” con permisos 777.

Utilizando el acortador en cualquier Web.

Para poder acortar automáticamente la pagina Web actual, deberás incluir este script que te devolverá una url acortada.

$script = 'http://yourdomain.com/shorten.php?longurl=';
$url_real = urlencode('http://'.$_SERVER['HTTP_HOST'].'/'.$_SERVER['REQUEST_URI']);

$shorturl = file_get_contents($script.$url_real);

Ahora podemos publicar en internet ya sea en Twitter, Facebook, entre otras redes sociales una url corta con nuestro propio dominio.

También te puede interesar

4 Comments

  1. uberVU - social comments
    feb 28, 2010 @ 00:06:36

    Social comments and analytics for this post…

    This post was mentioned on Twitter by craftyman: Acortador de URL con PHP y MySQL | Craftyman Blog http://bit.ly/111m98

  2. Carlos Andrés Sepúlveda Arango
    ene 03, 2011 @ 13:51:22

    Excelente aporte… muchas gracias!

  3. Oscar Vergara
    ago 05, 2011 @ 15:07:11

    donde se pone el script?

  4. kscius
    sep 22, 2011 @ 00:03:00

    cuando pongo la url que deseo acortar me devuelve toda la información que esta en mi archuvo config.php … por que es este error ???