Основной ответ
Общий хостинг, как правило, позволяет прослушивать высокий порт, например тот, который вы используете. Однако на практике возникнет ряд проблем.
Во-первых, веб-сервер, вероятно, будет разрешать входящие входы только 80 (HTTP) и 443 (HTTPS), поэтому порт 8081 будет заблокирован брандмауэром. Ваш прослушиватель PHP будет подключаться к порту, но терпеливо будет ждать трафика, который никогда не приходит.
Во-вторых, некоторые общие хосты будут иметь балансировщик нагрузки перед ними, и они могут быть настроены только для пересылки HTTP-трафика. Поскольку веб-сокеты - это другой протокол, они не будут настроены для пересылки. Та же проблема с портами повторяется и здесь - нестандартные порты переадресовываться не будут.
Чтобы решить эти проблемы, вам нужен собственный веб-сервер, на котором вы можете открывать порты (и настраивать балансировщики нагрузки) любым удобным для вас способом. Это довольно дешево сделать в наши дни - по цене пары кафе в месяц вы можете арендовать небольшой виртуальный сервер. Он не будет иметь столько оперативной памяти, сколько общий сервер, но будет гораздо более гибким.
Проблемы дизайна
Я бы также обратил внимание на использование нестандартных портов для веб-сокетов для обслуживания веб-приложения на стандартных портах 80/443. Это не всегда хорошая идея. Нестандартные порты будут хорошо работать на настольных компьютерах и стандартных домашних интернет-соединениях, но для некоторых офисных или мобильных интернет-соединений вы можете столкнуться с проблемой.
Лучше установить балансировщик нагрузки перед вашим приложением, а затем разрешить ему направлять трафик (Web Socket или HTTP) на основе сигнатуры протокола. Это позволит вам использовать несколько протоколов на порт. Если вы заинтересованы в изучении этого, я рекомендую Traefik с контейнерами Docker - я настроил это, и он действительно работает очень хорошо.