5

मैं इसे पूरा करने का सबसे अच्छा तरीका जानने का प्रयास कर रहा हूं; अनिवार्य रूप से मेरे पास लगभग 6 वेबसाइटें हैं जिन्हें मुझे ऑनलाइन प्राप्त करना है, लेकिन फिलहाल उनके पास शून्य ट्रैफ़िक के आगे होगा ताकि पैसे बचाने के लिए उन्हें उसी सर्वर पर तैनात किया जाना चाहिए (आदर्श रूप से हम एडब्ल्यूएस से लोचदार बीनस्टॉक का उपयोग करेंगे)।एकाधिक node.js वेब अनुप्रयोगों को मिलाएं

क्या सामान्य रूप से प्रत्येक वेब एप्लिकेशन को सामान्य रूप से लिखने का कोई तरीका है (इसलिए उन्हें आसानी से लिया जा सकता है और भविष्य में समर्पित सर्वर पर ले जाया जा सकता है) लेकिन एक app.js एंट्री पॉइंट है जो उपयुक्त नोड एप्लिकेशन के आधार पर लोड करता है यूआरएल?

स्पष्ट रूप से यह आदर्श नहीं है लेकिन मैंने ऐसा करने के कुछ तरीकों के बारे में सोचा है, लेकिन मैं जितना संभव हो सके गैर-हैकी बनना चाहता हूं ताकि साइटों को आसानी से बाद में स्थानांतरित किया जा सके।

+0

क्या उन्हें अलग प्रक्रियाओं के रूप में चल क्या बुराई है? यदि आप बस एक विशिष्ट नोड को अनुरोध अग्रेषित करना चाहते हैं, तो मुझे लगता है कि बहुत से लोग इसके लिए nginx का उपयोग कर रहे हैं। –

+0

ईमानदारी से ज्यादा नहीं; वास्तव में एक अस्थायी और त्वरित समाधान की तलाश में था क्योंकि हमारे पास पहले से ही लोचदार बीनस्टॉक में सामान स्थापित है, इसलिए इसे फिर से उपयोग करना बहुत अच्छा होगा कि हमें सड़क से नीचे खराब कर दिया जाए। लेकिन हाँ यह एक विकल्प है (और अधिक उपयुक्त एक)। – Kris

उत्तर

4

कनेक्ट vhost का उपयोग करें। http://www.senchalabs.org/connect/vhost.html

var express = require('express'), 
    main = express(); 

main.use(express.vhost('*.site1.com', require('../site1'))); 
main.use(express.vhost('*.site2.com', require('../site2'))); 

main.listen(80); 

और ../site1/index.js इस प्रकार दिखाई देंगे:

var express = require('express'), 
    app = express(); 

app.get('/', function(req, res) { res.send('Home Page'); }); 

module.exports = app; 
+0

यूप यह सही था; स्पष्ट रूप से मुझे एहसास नहीं हुआ कि vhost पूरे ऐप के साथ काम कर सकता है लेकिन यह समझ में आता है। धन्यवाद! उम्मीद है कि जल्द ही इसे बेहतर समाधान में ले जाया जा सकता है। – Kris

+0

हाय दोस्तों, क्या इसका मतलब यह होगा कि लोचदार बीनस्टॉक ऐप आवश्यकतानुसार स्केल करेगा यदि उदाहरण के लिए केवल एक ऐप्स को उच्च ट्रैफ़िक/उपयोग मिलता है? मैं कई नोडजेएस ऐप्स को तैनात करने का एक तरीका ढूंढ रहा हूं जिन्हें स्केल करने की आवश्यकता है लेकिन प्रत्येक ऐप के लिए एक व्यक्तिगत सर्वर के बिना। समझ में आता है? – Davo

संबंधित मुद्दे