Rails
> URI.encode('http://localhost/asflm#aflskm?lkml=klm#lkml')
"http://localhost/asflm%23aflskm?lkml=klm%23lkml"
In Rails use Addressable::URI.escape directly to perform a great encoding taking care of all parts of url
> Addressable::URI.escape('http://local/as host/asflm#aflskm?lkml=kl m#lkml')