Getting alternative TLDs to work with Chrome
Chrome has this very weird behavior where - when typing a full qualified domain name that is not known to Google (such as opennic.glue
or grep.geek
into the address bar - it redirects the user to their primary search engine (Google by default, because it's a Google product after all) instead of navigating to the actual website you just wanted to reach because the browser keeps a hardcoded, non-reconfigurable list of all ICANN TLDs. Annoying, isn't it? This is not annoying, but also a security concern, because it sends those requests directly to Google who is known to indefinitely log all search queries.
This is known to cause issues when using alternative DNS roots with custom TLDs such as OpenNIC's .glue
, .bbs
, .chan
, etc.
Google has decided to not fix this issue in favor of performance and usability:
Possible workarounds
There are a few possible workarounds for this issue, some are inconvenient to use while others require a few minutes of your free time:
Trailing slash
This workaround is recommended as Chrome will learn the domains you frequently navigate to and you won't need to add a forward-slash to the domains you visit frequently
Every time you want to visit a domain with a custom TLD, try adding a forward-slash (/
) to the end of the domain.
Example: You're trying to visit the domain opennic.glue
, try opennic.glue/
instead.
Leading protocol
Every time you want to visit a domain with a custom TLD, try adding a leading protocol identifier (such as http://
, https://
, ftp://
, etc.) in front of the domain.
Example: You're trying to visit the domain opennic.glue
, try http://opennic.glue
instead.
Remove address bar search function
Open the Chrome settings, click Manage search engines…
and add a new search engine:
Add a new search engine: direct
Keyword: %s
URL with %s in place of query: http://%s/
Mark the search engine that you just added as default by clicking Make default
.
This will cause Chrome to search any text you type into the address bar at http://<text>/
which breaks normal search queries via the address bar. You'll either have to stick with manually opening Google and then searching for something, or you'll have to add keyword search engine:
Add a new search engine: Google Search
Keyword: go
URL with %s in place of query: {google:baseURL}search?q=%s&{google:RLZ}{google:originalQueryForSuggestion}{google:assistedQueryStats}{google:searchFieldtrialParameter}{google:iOSSearchLanguage}{google:searchClient}{google:sourceId}{google:instantExtendedEnabledParameter}{google:contextualSearchVersion}ie={inputEncoding}
Now, every time you want to search for something, you need to type go <text>
into your address bar and it will search <text>
on Google.
Add keyword search to prevent Google search
This workaround is not recommended as it requires more keystrokes (7) than the Trailing slash
workaround (1 keystroke)
Open the Chrome settings, click Manage search engines…
and add a new search engine:
Every time you want to visit a domain with a custom TLD, you need to prepend direct
to the domain (with a space).
Example: You're trying to visit the domain opennic.glue
, try direct opennic.glue
instead.
Switch to another browser
The following browsers don't have this annoying behavior hardcoded, you might want to consider switching:
More workarounds
Do you know of another workaround that is worth listing here? Please let us know or add it to this wiki page by editing it.