У меня есть ряд отдельных сервисов приложений, которые я размещаю в своей домашней сети (например, Plex). [...] Из-за пределов [моей сети] я бы хотел разместить их так (соответственно)
http://www.myhomeserver.com/service1 http://www.myhomeserver.com/service2 http://www.myhomeserver.com/service3
Как указывает @grawity, ключевое слово "обратный прокси". Если к интерфейсу можно получить доступ через «http://», он должен иметь право на проксирование.
В качестве предложения я хотел бы изучить Apache (возможно, через Apache Lounge, если вы решите использовать Windows) с включенным mod_proxy (и, возможно, некоторыми дополнительными модулями, такими как mod_proxy_html). Базовая настройка (если вы не используете NAS) будет использовать ваш маршрутизатор и (полу) выделенный компьютер для перехвата входящих веб-запросов.
Я не использую Linux-машины, но у меня есть Synology Diskstation. Поэтому я хотел бы, если возможно, чтобы моя Synology выступила посредником, чтобы собрать все эти вещи вместе. [.]
Вам придется посмотреть на возможности вашей отдельной модели NAS, так как это может или не может быть возможно.
В частности, многие устройства NAS используют сетевую связь на основе DLNA для обслуживания мультимедиа, которая по своей природе несовместима с тем, что вы предлагаете (вам придется изменить свою стратегию на VPN для чего-либо на основе DLNA, например OpenVPN). Тем не менее, если я не ошибаюсь, некоторые устройства NAS имеют возможность доставлять вещи через FTP, что может быть совместимо с чем-то вроде mod_proxy_ftp. Также может существовать веб-интерфейс или другие подходящие возможности веб-обслуживания / прокси.
Обратите внимание, что это касается не только вашего NAS. Вы должны исследовать свои услуги на предмет их возможностей. Например, Plex по умолчанию работает как сервер DLNA. Чтобы использовать эту настройку, как вы предлагаете, вам, вероятно, придется использовать веб-интерфейс (порт по умолчанию 32400).
Я не очень знаком с веб-хостингом, поэтому я не уверен, с чего начать.
Получите какой-нибудь домен и укажите его в своей сети. Там много учебников о том, как это сделать, и (в теории) можно сделать совершенно бесплатно.
Убедитесь, что ваш маршрутизатор настроен правильно (в основном, переадресация портов) и протестируйте внешнее соединение с помощью базовой настройки веб-сервера (опять же, есть много онлайн-уроков).
Убедившись, что вы можете связаться со своей сетью извне, используя HTTP, настроить обратный прокси-сервер для своих приложений (и / или иным образом включить правильные функции NAS для вашей модели). Проверьте и устраните неисправности по мере необходимости.
[D] oes [прокси] требуют, чтобы сами приложения знали об этой специальной настройке URL, когда они, вероятно, ожидают размещения на выделенных портах?
В зависимости от ваших настроек могут быть некоторые специальные настройки (например, Plex с SSL - не требуется), но по большей части никаких дополнительных знаний со стороны приложения не требуется.