This wasn't manifesting in the browser, as my browser was automatically prefixing the url with a slash, but I finally confirmed it with plain ol curl
`curl http://ci.example.com/github-webhook/`
- result: same error about payload that you see in the browser
`curl curl http://ci.example.com/github-webhook`
- result: silence. no output.
I spent like 2 hours trying to figure this out, but mostly because I didn't realize that the github service "Update settings" button needed to be pushed before "Test Hook" would work. But that's an issue for github