Как выполнить субдоменную маршрутизацию в MERN Stack? - PullRequest
0 голосов
/ 01 октября 2018

Я новичок в узле и реагирую, и я пытаюсь выполнить маршрутизацию поддоменов в моем приложении MERN.Я обнаружил, что я не могу перенаправить мои субдомены в реакцию, поэтому у меня остается узел.В узле есть много способов, например, vhost или

app.get('*',(req,res)=>{
 res.sendFile(path.resolve(__dirname,'client','build','index.html'))
}) 

Но мой вопрос заключается в том, нужно ли создавать разные приложения для одного поддоменов?например,

  • для admin.application.com -> приложение администратора в реакции
  • для otherdomain.application.com-> другое приложение в реакции
  • только для приложения.com -> еще одно приложение в действии.

Это единственный способ сделать это?Если да, может кто-то с большим опытом рассказать мне больше об этом?Если нет, пожалуйста, руководство.

Ответы [ 2 ]

0 голосов
/ 02 октября 2018

Вы можете использовать:

req.get('host'), чтобы получить имя хоста.На основе имени хоста вы можете принимать дальнейшие решения о маршрутизации запроса.

0 голосов
/ 01 октября 2018

Каждый поддомен, похожий на домен, должен иметь свою собственную запись DNS, поэтому он перенаправляется на IP-адрес.Вы можете направлять трафик из разных поддоменов на один и тот же сервер и обрабатывать их одним и тем же приложением, изменяя свои записи DNS.

Если между этими поддоменами нет различий, вы можете просто использовать одно и то же приложение Node.js.обрабатывать весь входящий трафик.Но если вы хотите смонтировать трафик от каждого субдомена к другому порту или пути (например, admin.application.com к / admin вашего приложения и otherdomain.application.com к / other path).В этом случае вы можете использовать прокси-приложение, такое как nginx или HAProxy.

Мое предложение состоит в том, чтобы разрабатывать разные приложения для каждого субдомена, если их бизнес-логика отличается.В противном случае вы можете включить все в одно и то же приложение.

...