How to reset external protocol handler in Chrome?

I found a solution to this on Windows, and it turns out it also works on Ubuntu:

  1. Close Chrome
  2. Open ~/.config/google-chrome/Local State in a text editor.
  3. Search for protocol_handler.
  4. To make Chrome ask you how to handle a specific protocol again, remove the line corresponding to that protocol in the list of excluded schemes.
  5. Save and exit.

Update: protocol_handler has been moved to the file Preferences in the subdirectory Default. If you are using multiple profiles, the file is also located in the folders Profile 2, Profile 3 etc.

Update: protocol_handler no longer seems to exist, this is now handled directly within the Chrome settings, see https://support.google.com/chrome/forum/AAAAP1KN0B0_FSBtFo5g_8 . Currently it is found in Settings -> Privacy and Security -> Site settings -> Handlers


On Windows, this setting now appears to be located at

~/AppData/Local/Google/Chrome/User Data/Default/Preferences

Do a search for excluded_schemes. It will be a dictionary of custom protocol names set to true or false. Find the desired custom protocol in the dictionary and delete that entry, save the file, then restart Chrome.