У меня есть сервер («myserver»), который разрешает запросы только к порту 80 через HTTPS. Еще одно ограничение заключается в том, что я не могу создавать поддомены, поэтому я должен использовать «myserver».
Теперь у меня есть два приложения: frontend, работающий на порту 8000, и backend, на порту 9000. В идеале я бы создал два виртуальных хоста: frontend.myserver и backend.myserver, используя разные корни документов, имена серверов, и т.д., но поскольку это невозможно, я думаю, мне придется работать, например, с такими путями, как «myserver / frontend» и «myserver / backend».
Возможно ли это? Вы знаете, какая конфигурационная директива позволит мне это сделать? возможно, используя директиву псевдонима?
Да, вы можете использовать поддомены только с одним IP-адресом. В Apache вам нужно будет настроить свои виртуальные серверы.
Посмотрите первый пример здесь: https://httpd.apache.org/docs/2.2/vhosts/examples.html
Обратите внимание, что вы настраиваете каждый виртуальный сервер для каждого сайта, который хотите обслуживать. Убедитесь, что вы настроили каждое из следующих действий:
Значение ServerName для каждого URL-адреса, который вы хотите обслуживать.
<VirtualHost *:80>
DocumentRoot /www/frontendcontent
ServerName frontend.myserver
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /www/backendcontent
ServerName backend.myserver
</VirtualHost>
Вам также может потребоваться использовать директиву ServerAlias, если вы хотите, чтобы что-то вроде example.org и www.example.org работало. Для этого вы должны добавить ServerAlias точно так же, как строку ServerName, но указать псевдоним, который вы хотите использовать для этого виртуального сервера ServerName. Вот документация по ServerAlias, но я предлагаю вам поработать выше, а затем при необходимости поработать с ServerAlias: http://httpd.apache.org/docs/2.2/mod/core.html#serveralias