I have a series of separate application services I host on my home network (e.g. Plex). [...] From outside [of my network], I'd like to host them like this (respectively)
http://www.myhomeserver.com/service1 http://www.myhomeserver.com/service2 http://www.myhomeserver.com/service3
Como @grawity aponta, a palavra-chave é "proxy reverso". Se uma interface puder ser acessada com "http: //", ela deverá ser elegível para proxy.
Como sugestão, eu procuraria no Apache (possivelmente via Apache Lounge se você decidir usar o Windows) com mod_proxy ativado (e possivelmente alguns módulos adicionais, como mod_proxy_html ). Sua configuração básica (se não estiver usando o seu NAS) estará usando o seu roteador e um computador (semi) dedicado para capturar solicitações da Web recebidas.
I do not run any Linux machines, but I do have a Synology Diskstation. So I'd like, if possible, for my Synology to act as the go-between to pull all these things together[.]
Você terá que analisar os recursos do seu modelo NAS individual, pois isso pode ou não ser possível.
Particularmente, muitos dispositivos NAS usam comunicação de rede baseada em DLNA para veicular mídia, que não é inerentemente compatível com o que você propõe (você teria que mudar sua estratégia para uma VPN para qualquer coisa com base em DLNA, por exemplo, OpenVPN ). Dito isso, se não estou enganado, alguns dispositivos NAS têm a capacidade de entregar coisas via FTP, o que poderia possivelmente ser compatível com algo como mod_proxy_ftp . Também pode haver uma interface da Web ou outros recursos adequados de servidor / proxy.
Observe que isso não se aplica apenas ao seu NAS. Você também precisa investigar seus serviços para os recursos deles. Por exemplo, o Plex opera como um servidor DLNA por padrão. Para fazer proxy dessa configuração conforme sugerido, você provavelmente precisará usar a interface da Web (porta padrão 32400).
I'm not very familiar with web hosting, so I'm not sure where to begin here.
-
Obtenha um domínio de algum tipo e aponte-o para sua rede. Há muitos tutoriais sobre como fazer isso e (em teoria) podem ser feitos gratuitamente.
-
Verifique se o roteador está configurado corretamente (principalmente o encaminhamento de porta) e teste sua conexão externa com uma configuração básica do servidor da web (mais uma vez, há muitos tutoriais on-line).
-
Quando tiver certeza de que pode entrar em contato com sua rede pelo lado de fora usando HTTP, configure um proxy reverso para seus aplicativos (e / ou ative os recursos NAS corretos para seu modelo). Teste e solucione problemas conforme necessário.
[D]oes [proxying] require the applications themselves to be aware of this special URL setup when they probably expect to be hosted on dedicated ports?
Pode haver algumas configurações especiais, dependendo da sua configuração (por exemplo, Plex com SSL - não obrigatório), mas, na maioria das vezes, nenhum conhecimento extra da parte do aplicativo deve ser necessário.