Wednesday, August 3, 2011

Hacking bit.ly and goo.gl

bit.ly & goo.gl users: you can add another query string pair at the end of your link. Any unused pairs are usually ignored-- which will give you not only different shortened links to share but also label one from the other.


Both shortening services are weird about shortening any URL more than once for you. This is a workaround for that by essentially making them different via adding data that will be unused and/or ignored.

Also, neither service provides you a meaningful title for your links beyond the title of the page.

http://rustbeltrebellion.com/?link=facebook
http://rustbeltrebellion.com/?link=googleplus
http://rustbeltrebellion.com/?link=twitter

Guess where I used what.

Here is an example:


Test 1
http://www.google.com/?test=1/  >>  http://bit.ly/oJdAlV || http://goo.gl/9pX4h


Test 2
http://www.google.com/?test=2/  >>  http://bit.ly/qxp4Y5 || http://goo.gl/Ob2oP

Everything above points at the same page of the same site. When your browser arrives at "http://google.com", "?test=#" is completely ignored.

(I can picture sites depending on sequential data in the query string or sites that test for query string shenanigans giving less than satisfactory outcomes-- but by and large you will be successful.)

As cool as this is for bit.ly and goo.gl users who have wanted multiple shortened urls for a single destination for tracking user interest, it is nowhere as cool as what Vitreo has going on with their QR and shortening tools.

DD-WRT control panel, no-ip, and port 80

 I'm a satisfied no-ip DDNS subscriber happily using DD-WRT.
In the no-ip settings, I have an A Name record (hostname.com) that no-ip kindly shoots straight to my house.
I also have a www C Name record (www.hostname.com) which gets some magic applied then is sent to hostname.com:webServerPort (hostname.com:8080 in my case).

www.hostname.net goes to my web server. The port 8080 traffic is handled magnificently. That is awesome.
When I type in hostname.com that is translated to my ever changing IP by my DDNS service, it takes me to the control panel of my router which listens for web browser traffic on none other than port 80--
Not so awesome. Sadness actually.
I had everything working again otherwise.

BACK UP YOUR SETTINGS.
You're going to be in there anyway, jeez man it only takes a few seconds.

I checked HTTPS and unchecked HTTP in Administration > Management > Web Access > Protocol

What this does for us is that it sets the router to listen for requests of the web GUI, the control panel, on port 443 and not port 80 anymore.

Save, Apply Settings, Reboot.
I do it whether I really need to or not, this is my house-- not a Data Center of a Fortune 500.

Now the router needs accessed with https://192.168.1.1 , heads up a certificate warning will probably pop up. The router is self certifying itself for encrypted web traffic and it is not on the preferred list of SSL certificate providers, so click whatever you need in order to continue.

After that I rerouted port 80 (since that is where the naked hostname.com from a web browser goes) via the NAT via TCP only to my webserver IP on port 80 in NAT / QoS > Port Forwarding > Port Forward > Forwards

Save, Apply Settings, Reboot.
BACK UP YOUR NEW SETTINGS.
Pure awesomeness. Enjoy.

Followers