I hate public WiFi that blocks arbitrary ports. The internet is not HTTP!!
Another option is an ssh/https multiplexer like sslh: https://github.com/yrutschle/sslh

It allows you to listen for https and ssh traffic on a single port.