Ну, хотя я оценил ответы, я не был полностью удовлетворен окончательным результатом. Я хотел, чтобы изменения в моем провайдере были прозрачны для моих клиентов, и я думаю, что мне удалось заставить его работать.
Вот что я сделал:
Я нанял дешевый VPS-сервер - VPSLink - и выбрал его самый дешевый тариф: 64 МБ ОЗУ, 2 ГБ HD и 1 ГБ ежемесячного трафика. После пожизненной 10% скидки он составлял всего 7,16 долл. США в месяц, что вполне приемлемо для работы, и в качестве бонуса вы получаете VPS-сервер для песочницы. Хостинг кажется пока что хорошим - никаких проблем. Если вы хотите сделать это, вы можете зарегистрироваться на сайте, указанном выше, или с помощью реферального кода. Есть куча доступных в интернете, вам просто нужно искать. Кроме того, я могу легко создать его для вас, если хотите, просто оставьте комментарий к этому ответу: вы получите скидку 10%, а я месяц бесплатно. Я не буду публиковать здесь прямо, потому что может показаться, что это было намерение за этот пост - что не было.
Эта учетная запись неуправляема, но предоставляет root-доступ. Затем я настроил apache для работы в качестве прокси для моих запросов порта 80, прозрачно перенаправляя их на мой локальный веб-сайт через порт 8081.
Ниже приведены некоторые фрагменты конфигурационных файлов моего Apache httpd.conf.
Конфигурация VPS-сервера:
<VirtualHost *:80>
ServerName mydomain.com
ServerAlias www.mydomain.com *.mydomain.com
RewriteEngine On
RewriteCond %{HTTP_HOST} (.*)\.mydomain\.com [NC]
RewriteRule (.*) http://mylocalserverdns.mydomain.com:8081/%1$1 [P]
</VirtualHost>
Это делает запрос типа http://subdomain1.mydomain.com/script?a=b прозрачно перенаправленным на стороне сервера в http://mylocalserverdns.mydomain.com:8081/subdomain1/script?a=b,, поэтому я могу делать все, что захочу.
На моем локальном сервере я проделал то же самое, чтобы распространить обработчик поддоменов. У меня есть, например, два серверных приложения Java, которые работают на портах 8088 и 8089 локально. Все, что мне нужно было сделать, - это еще один прокси-сервер, теперь внутри
Конфигурация локального сервера:
<VirtualHost *:8081>
ServerName mylocalserverdns.mydomain.com
ProxyPass /app1 http://127.0.0.1:8088
ProxyPassReverse /app1 http://127.0.0.1:8088
ProxyPassReverse /app1 http://mylocalserverdns.mydomain.com:8088/app1
ProxyPass /app2 http://127.0.0.1:8089
ProxyPassReverse /app2 http://127.0.0.1:8089
ProxyPassReverse /app2 http://mylocalserverdns.mydomain.com:8089/app2
</VirtualHost>
Надеюсь, это того стоит, если кто-то другой ищет такую же альтернативу.