There are so many problems when running Gitlab behind a reverse proxy. However, the Error 422 one is the most common. The only way to fix this problem is by supplying X-Forwarded-Proto and X-Forwarded-Ssl request headers to the reverse proxy as indicated here. How to do that depends on each individual reverse proxy server used and is beyond the scope of this aside.