하나의 서버를 사용하여 여러 도메인에 분산되어있는 여러 Node.js 웹 앱을 호스팅하고 있습니다. 나의 현재 실습은 다른 포트의 각 응용 프로그램에 대해 Express 서버를 실행하고 요청을 올바른 포트/Express 서버로 라우팅 (리디렉션)하는 기본 서버를 실행하는 것입니다. 이 기능은 작동하지만 내 기본 서버가 모든 HTTP 요청을 라우팅 (수동으로 리디렉션)하고 내 사용자가 [hostname.com] : 8000에서 호스트 된 것으로 내 애플리케이션을 볼 수 있음을 의미합니다.같은 시스템에 여러 대의 Express 서버를 구성하는 방법은 무엇입니까?
약간의 연구 끝에 필자는 내 라우팅 요구에 http-proxy을 사용할 수 있지만 동일한 시스템에서 여러 대의 Express 서버를 실행하는 것이 가장 좋은 방법인지 알고 싶습니다. 다음과 같이 계획하고 있습니다.
각 웹 앱에는 완전한 Express 폴더 구조 (app.js, 경로,보기 등)가있는 고유 한 폴더가 있습니다. 도메인별로 앱이 그룹화되므로 예를 들어, 폴더 구조는 다음과 같습니다
hostname.com/
app.js
routes/
views/
...
app1/
app1.js
routes/
views/
...
app2
...
hostname2.com/
app.js
routes/
views/
...
내가 노드와 별도로 각 app.js를 실행해야합니다 (또는 내가 현재 사용하고 forever와 함께), 그리고 각각 내부적으로 다른 포트를 사용해야합니다 , 교차 앱 리디렉션이 대상 앱의 포트를 가리키고 있습니다.
이것이 현재의 계획입니다. 그 문제는 무엇이며 어떤 함정을 피해야합니까? 가장 중요한 점은 이이 문제에 대한 확고한 해결책 인 Node.js/Express를 사용하여 동일한 시스템에 여러 웹 응용 프로그램을 호스팅하는 문제입니까?
EDIT : 결국 웹 소켓과 HTTPS를 사용할 계획이며, 설치 프로그램에서 지원할 수있는 대역폭의 양은 거의 중요하지 않습니다. 이것은 개발 서버입니다 (적어도 현재는). WebSockets 문제를 제기 한 David Ellis에게 감사드립니다.
두 번째 편집 : EhevuTov와 David Ellis에게 감사의 말을 전합니다. 나는 아직도 내 응용 프로그램에 대한 전체 구조에 정착하고있어, 그 질문은 this StackOverflow question에 의해 몇 가지 세부에서 해결 된 것처럼이
이 이THIRD 편집 보인다 : 나는 훨씬 더해야하지만 (이 질문을 게시 이후 방법을 왔어요 가기). this file in my GitHub repository을 확인하십시오.이 질문에 대한 답변에서 내가 배운 것을 활용하십시오!
코멘트 주셔서 감사합니다. vhost (#express에서 유용한 IRC 사용자의 도움을 받아)를 사용하기 시작했으며, 매력처럼 작동합니다. 또한 Node.Cluster로 이동할 가능성을 높이 평가 해 주셔서 감사합니다. – Aaron
@aaron 대단히 환영합니다. IRC에서 어쩌면 – EhevuTov
@Aaron에서 보자. 어떻게 할 수 있는지 보여주기 위해 공유 할 수있는 코드가 있습니까? – Matt