`url-replacement` doesn't allow protocol to change during the replacement process, do we also need to enforce this for `origin`? @jridgewell what was the reasoning behind enforcing the protocol mismatch and is it needed for origin?