Tipo de redireccionamiento en Acortadores de Enlaces

Nan0 Seguir

Beta
Verificación en dos pasos desactivada
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
24 May 2010
Mensajes
50
Hola, que tal, estoy programando un acortador de enlaces personalizado, tipo goo.gl, tinyurl y bit.ly, estoy usando php+mysql.

Bueno ya he avanzado gran parte del código, solo que he llegado a un punto donde me estancado, en algo que pense en su momento era relativamente fácil.

La parte del código en cuestión es cuando redirecciona al enlace original, el problema es que para los enlaces que tienen la ruta de un archivo de descarga (como megaupload, mediafire,etc ) no me funciona en los gestores de descarga.

Por ejemplo:
La direccion acortada para este enlace:
Insertar CODE, HTML o PHP:
http://www.megaupload.com/?d=H4N9E047

Usando los acortadores previamente mencionados:
Insertar CODE, HTML o PHP:
http://bit.ly/krcPcS
http://goo.gl/z5gIS
http://tinyurl.com/3vqg3bx

Al agregarla a un gestor de descarga, por ejemplo el jdownloader , el enlace es reconocido sin problemas.
Lo curioso es que abajo en el JD sale un mensaje: "decrypt-redirecter services: /"

Enlace eliminado

Y cuando lo hago desde mi código, me sale lo siguiente:

Enlace eliminado

Mi código es el siguiente, bueno las partes importantes:
PHP:
// .htaccess
RewriteEngine On
RewriteRule ^([0-9a-zA-Z]+)$ index.php?id=$1 [L]

PHP:
<?php

// index.php, la parte donde redirecciono

//Obtengo el enlace de la DB ...

$url = 'http://www.megaupload.com/?d=H4N9E047';
	
header('HTTP/1.1 301 Moved Permanently');    
header('Location: '.$url);	
exit(0);
?>

Enlace eliminado Resumiento, alguien conoce el posible modo de redireccionamiento que usan dichos acortadores de enlaces??

Ojala alguien pueda ayudarme, cualquier ayuda sera bien recibida.

Saludos
 

toledano

Iota
Programador
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
Verificado por Binance
Desde
10 Abr 2009
Mensajes
2.134
Creo que estás formando mal el grupo 1 en tu expresión regular. Lo mejor sería señalar un mejor comienzo y no toda la URL

Algo asi:

Insertar CODE, HTML o PHP:
RewriteRule /sub/([0-9a-zA-Z]+)$ index.php?id=$1 [L]
 

Nan0

Beta
Verificación en dos pasos desactivada
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
24 May 2010
Mensajes
50
Bueno, gracias Toledano por la respuesta.

La regla del htaccess funciona, en un navegador te redirecciona normal, mi curiosidad es porque el gestor no lo reconoce así. Es por eso que estuve buscando otras formas de redireccionamiento, aparte del header('location: ...'), pero sigo con el mismo problema.

Estuve leyendo este tema:
How do short URLs services work? - Stack Overflow

... donde hablan de los tipos de redirecciones, no lo sé talves ese sea el problema, pero no le entendí mucho.
 

Cicklow

Admin
Épsilon
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Suscripción a IA
Desde
30 May 2011
Mensajes
969
te respondi en elhacker.net ;)
 

¡Regístrate y comienza a ganar!

Beneficios

  • Gana dinero por participar
  • Gana dinero por recomendarnos
  • Descubre ofertas de empleo diariamente
  • Negocios seguros
  • ¡Información premium y más!

Acceder

¿Ya tienes una cuenta? Accede aquí

Arriba