Configuring search domains?
I think the readme might be missing info on how to setup clients to use the shortener service. I am new to this and haven't been able to figure it out. How would you recommend we setup client machines? Search domains? Something else?
Search domains should work.
For example, if you set up golinks at go.corp.example.com, and set the search domain for client to corp.example.com, they should be able to access the service via http://go/
This should be the easiest approach, and you can also configure your local DHCP server to propagate that search domain setting.
An alternative approach would be to develop a chrome extension for it. But it's not really necessary if it's just for golinks (and potentially other internal services just to not write the ".corp.example.com" part), unless you are having some internal proxy settings that you want your users to easily toggle.
@menottim @adamyi I'm the lead developer on Trotto, another go/ links implementation. We open-sourced the Trotto app recently and are planning to open-source the Chrome extension as well. Right now the extension will work with any go links backend via Chrome's admin-managed storage, and we'd love to collaborate to make it easier to use the extension with any backend (and across more browsers).
I agree search domains are a good way to set up the "go/somewhere" magic. It's how I set up go links at my old company, and the advantage is that it can start working immediately for anyone on a configured network. The downside is that if someone's not on the network (working from home without VPN, working from a remote office that hasn't been set up yet), go links will stop working, and users will have to fall back to using the long domain like go.corp.example.com.
I'd recommend using both search domains and a browser extension, since the 2 can coexist peacefully and provide redundancy.
For example, if you set up golinks at go.corp.example.com, and set the search domain for client to corp.example.com, they should be able to access the service via http://go/
@adamyi Have you tried this in practice? When I set up search subdomains(*), I can ping go, and go.corp.example.com replies as expected. However, accessing http://go/ in my browser returns 404.
I assume that's because AppEngine only lets one set go.corp.example.com as a custom domain, not go. So once they receive a request for the naked hostname of go, they don't know which app to route it to. If I'm right, I don't see how anybody was able to set this up. So I'm hoping to learn that I'm wrong, and in what way :)
(*) Like so:
sudo bash -c 'echo "search corp.example.com" >> /etc/resolv.conf'
@mitjat I do this by running a small GCE vm that redirects http://go.corp.company.com to https://goto.corp.company.com, which is the AppEngine app url. Then go.corp.company.com is added as an A record that points to that VM. I haven't added any HA, and that instance has needed to be rebooted a few times, but it's not a big deal. In my experience, the single instance fits into GCE's always free tier.