ServBay के साथ Socket.io प्रोजेक्ट बनाएँ और चलाएँ
Socket.io एक लोकप्रिय JavaScript लाइब्रेरी है, जो रीयल-टाइम, टू-वे, इवेंट-ड्रिवन वेब एप्लिकेशन बनाने के लिए डिज़ाइन की गई है। यह WebSocket प्रोटोकॉल पर आधारित है और जहाँ आवश्यक हो, उसे सपोर्ट न करने वाले क्लाइंट्स के लिए फॉलबैक मैकेनिज़्म (जैसे लॉन्ग पॉलिंग) भी प्रदान करता है, जिससे किसी भी नेटवर्क या क्लाइंट कंडीशन में स्टेबल रीयल-टाइम कम्युनिकेशन सुनिश्चित रहता है।
यह गाइड बताएगी कि कैसे ServBay के शक्तिशाली लोकल डेवलपमेंट एनवायरनमेंट का उपयोग करके एक Socket.io प्रोजेक्ट तैयार, रन और मैनेज करें। ServBay एक प्री-कॉन्फ़िगर किया गया Node.js एनवायरनमेंट और आसान वेबसाइट (पहले "होस्ट") प्रबंधन प्रदान करता है, जिससे Socket.io डेवलपमेंट अधिक आसानी से होती है।
Socket.io क्या है?
Socket.io एक लाइब्रेरी है जो रीयल-टाइम, टू-वे, इवेंट-बेस्ड कम्युनिकेशन की सुविधा देती है। यह दो हिस्सों में बँटी होती है:
- Node.js सर्वर पर चलने वाली बैकएंड लाइब्रेरी।
- ब्राउज़र में चलने वाली क्लाइंट-साइड JavaScript लाइब्रेरी।
हालांकि Socket.io का मुख्य उद्देश्य WebSocket का उपयोग करना है, यह अपने-आप अन्य ट्रांसपोर्ट्स (जैसे Adobe Flash Socket, Ajax Long Polling, Ajax Multipart Streaming, Forever IFrame, JSONP Polling आदि) का फॉलबैक देकर पुराने ब्राउज़रों और लिमिटेड नेटवर्क्स में भी कंपैटिबिलिटी, यानी अनुकूलता सुनिश्चित करता है।
Socket.io की मुख्य विशेषताएँ और फायदे
- रीयल-टाइम कम्युनिकेशन: सर्वर और क्लाइंट के बीच फौरन डेटा एक्सचेंज की सुविधा, जो चैट ऐप, कोलैबोरेशन टूल्स, लाइव डैशबोर्ड्स, ऑनलाइन गेम्स आदि के लिए आदर्श है।
- क्रॉस-प्लैटफॉर्म सपोर्ट: वेब ब्राउज़र, मोबाइल ऐप्स और Node.js सर्वर एनवायरनमेंट में उपयोगी।
- ऑटो री-कनेक्ट: नेटवर्क डिस्कनेक्ट होने पर क्लाइंट्स अपने-आप सर्वर से फिर से जुड़ने की कोशिश करते हैं, जिससे एप्लिकेशन मजबूत बनती है।
- इवेंट-ड्रिवन मॉडल: इवेंट पर आधारित कार्यक्रम लिखना अधिक सहज और आसान होता है।
- रूम्स और नेमस्पेस: क्लाइंट्स को "रूम्स" में ग्रुप किया जा सकता है, जिससे ग्रुप-विशिष्ट ब्रॉडकास्ट संभव है; "नेमस्पेस" एक ही कनेक्शन पर संसाधनों के मल्टीप्लेक्सिंग को सक्षम करते हैं।
- बाइनरी डेटा सपोर्ट: बाइनरी डेटा भेजना और पाना, दोनों सरल।
- उच्च कंपैटिबिलिटी: तरह-तरह के नेटवर्क्स पर अलग-अलग ट्रांसपोर्ट्स के जरिए बेहतरीन भरोसेमंद कनेक्शन।
Socket.io के साथ, डेवलपर एप्लिकेशन लॉजिक पर फोकस कर सकते हैं, जबकि जटिल रीयल-टाइम कम्युनिकेशन की चिंता Socket.io संभाल लेता है।
ServBay के साथ Socket.io प्रोजेक्ट बनाएँ और चलाएँ
ServBay Node.js डेवलपर्स के लिए एक रेडी-टू-यूज़ लोकल एनवायरनमेंट उपलब्ध कराता है, जिसमें Node.js रनटाइम, npm पैकेज मैनेजर एवं यूजर-फ्रेंडली वेबसाइट मैनेजमेंट टूल्स शामिल हैं। हम इन्हीं सुविधाओं का इस्तेमाल Socket.io का एक डेमो प्रोजेक्ट सेटअप और रनिंग के लिए करेंगे।
पूर्व आवश्यकताएँ
शुरुआत करने से पहले ये सुनिश्चित कर लें:
- ServBay इंस्टॉल करें: ServBay की ऑफिशियल वेबसाइट से नवीनतम वर्शन डाउनलोड व इंस्टॉल करें।
- ServBay में Node.js पैकेज इंस्टॉल करें: चेक करें कि Node.js पैकेज ServBay में इंस्टॉल है। यह “पैकेजेज़” (पहले "सर्विसेज़") सेक्शन, ServBay कंट्रोल पैनल में जाकर इंस्टॉल/मैनेज किया जा सकता है। विवरण के लिए ServBay में Node.js का उपयोग देखें।
Socket.io डेमो प्रोजेक्ट बनाएँ
हम एक सिंपल चैट ऐप बनाएँगे।
प्रोजेक्ट डाइरेक्टरी इनिशियलाइज़ करें:
सबसे पहले, अपना टर्मिनल खोलें। ServBay सलाह देता है कि वेबसाइट प्रोजेक्ट्स
/Applications/ServBay/www
फोल्डर में रखे जाएँ। वहाँ जाएँ, नया फोल्डर बनाएँ, फिर npm के साथ प्रोजेक्ट इनिशियलाइज़ करें और ज़रूरी डिपेंडेंसी इंस्टॉल करें:bashcd /Applications/ServBay/www mkdir servbay-socketio-chat cd servbay-socketio-chat npm init -y npm install express socket.io
1
2
3
4
5इससे
servbay-socketio-chat
फोल्डर मेंpackage.json
बनेगा, और दो मुख्य डिपेंडेंसीexpress
(HTTP और स्टैटिक फाइल सर्व करने के लिए) औरsocket.io
(सर्वर व क्लाइंट लाइब्रेरी) इंस्टॉल हो जाएँगी।सर्वर फाइल (
server.js
) बनाएँ:servbay-socketio-chat
मेंserver.js
नाम की फाइल बनाएं और निम्न कोड डालें। यही HTTP सर्वर स्टार्ट करने, उसमें Socket.io लगाने और कनेक्शन्स व मैसेज ब्रॉडकास्ट हैंडल करेगा।javascriptconst express = require('express'); const http = require('http'); const socketIo = require('socket.io'); const path = require('path'); // path मॉड्यूल को इम्पोर्ट करें const app = express(); // express ऐप के आधार पर HTTP सर्वर बनाएँ const server = http.createServer(app); // Socket.io को HTTP सर्वर से जोड़ें const io = socketIo(server); // स्थैतिक फाइल्स का डायरेक्टरी सेट करें (मौजूदा डायरेक्टरी) app.use(express.static(__dirname)); // रूट ('/') पर GET रिक्वेस्ट हैंडल करना, index.html भेजें app.get('/', (req, res) => { // path.join का इस्तेमाल सभी OS पर सही पथ के लिए करें res.sendFile(path.join(__dirname, 'index.html')); }); // Socket.io कनेक्शन इवेंट सुनें io.on('connection', (socket) => { console.log('a user connected'); // नया यूज़र कनेक्ट होते ही लॉग करें // डिस्कनेक्शन इवेंट सुनें socket.on('disconnect', () => { console.log('user disconnected'); // यूज़र डिस्कनेक्ट होते ही लॉग करें }); // 'chat message' इवेंट सुनें socket.on('chat message', (msg) => { console.log('message: ' + msg); // प्राप्त मैसेज लॉग करें // सभी कनेक्टेड क्लाइंट्स को मैसेज ब्रॉडकास्ट करें io.emit('chat message', msg); }); }); // पोर्ट पर्यावरण चर या डीफ़ॉल्ट मान से लें const port = process.env.PORT || 3000; server.listen(port, () => { console.log(`Server running on port ${port}`); console.log(`Access it via http://localhost:${port} (direct) or via ServBay reverse proxy`); });
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43कोड विवरण:
- हम
express
का उपयोग करके Web सर्वर बनाते हैं, जोindex.html
डिलीवर करेगा। http.createServer(app)
द्वारा HTTP सर्वर बनाया, जिस पर Socket.io काम करेगा।socketIo(server)
द्वारा Socket.io HTTP सर्वर से जुड़ता है।io.on('connection', ...)
न्यू क्लाइंट कनेक्शन सुनना।socket.on('disconnect', ...)
क्लाइंट डिस्कनेक्ट इवेंट सुनना।socket.on('chat message', ...)
क्लाइंट से 'chat message' इवेंट व डेटा सुनना।io.emit('chat message', msg)
सभी क्लाइंट्स को मैसेज ब्रॉडकास्ट करना।
- हम
क्लाइंट फाइल (
index.html
) बनाएँ:servbay-socketio-chat
के भीतरindex.html
फाइल बनाएं और निम्न कोड रखें। इसमें HTML स्ट्रक्चर, स्टाइल, और Socket.io क्लाइंट स्क्रिप्ट शामिल हैं, जो सर्वर से कनेक्ट, मैसेज भेजने और रिसीव के लिए है।html<!DOCTYPE html> <html> <head> <title>ServBay Socket.io Chat</title> <style> body { margin: 0; padding-bottom: 3rem; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; } #form { background: rgba(0, 0, 0, 0.15); padding: 0.25rem; position: fixed; bottom: 0; left: 0; right: 0; display: flex; height: 3rem; box-sizing: border-box; backdrop-filter: blur(10px); } #input { border: none; padding: 0 1rem; flex-grow: 1; border-radius: 2rem; margin: 0.25rem; } #input:focus { outline: none; } #form > button { background: #333; border: none; padding: 0 1rem; margin: 0.25rem; border-radius: 3px; outline: none; color: #fff; } #messages { list-style-type: none; margin: 0; padding: 0; } #messages > li { padding: 0.5rem 1rem; } #messages > li:nth-child(odd) { background: #efefef; } .servbay-banner { background-color: #007bff; /* ServBay नीला */ color: white; text-align: center; padding: 15px 0; font-size: 22px; margin-bottom: 20px; font-weight: bold; } </style> </head> <body> <div class="servbay-banner">ServBay Socket.io चैट डेमो में आपका स्वागत है!</div> <ul id="messages"></ul> <form id="form" action=""> <input id="input" autocomplete="off" /><button type="submit">Send</button> </form> <!-- Socket.io क्लाइंट लाइब्रेरी को शामिल करें --> <!-- यह फाइल सर्वर रन होने पर ऑटो-जनरेट होती है --> <script src="/socket.io/socket.io.js"></script> <script> // Socket.io सर्वर से कनेक्ट करें // अगर क्लाइंट और सर्वर एक ही डोमेन-पोर्ट पर हैं, तो io() ऑटो कनेक्ट करेगा var socket = io(); var form = document.getElementById('form'); var input = document.getElementById('input'); var messages = document.getElementById('messages'); // messages एलिमेंट पाएं form.addEventListener('submit', function(e) { e.preventDefault(); // फॉर्म की डिफ़ॉल्ट सबमिशन को रोकें if (input.value) { // 'chat message' इवेंट और मैसेज सर्वर को भेजें socket.emit('chat message', input.value); input.value = ''; // इनपुट क्लियर करें } }); // सर्वर से प्राप्त 'chat message' इवेंट सुनें socket.on('chat message', function(msg) { // नया लिस्ट आइटम बनायें और मैसेज दिखाएं var item = document.createElement('li'); item.textContent = msg; // textContent का प्रयोग सुरक्षा के लिए करें messages.appendChild(item); // लिस्ट में जोड़ें // नए मैसेज पर ऑटो-स्क्रॉल करें window.scrollTo(0, document.body.scrollHeight); }); </script> </body> </html>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64कोड विवरण:
- पेज में सिंपल HTML, CSS (ServBay ब्रांडेड बैनर समेत), मैसेज लिस्ट (
ul#messages
), और मैसेज भेजने का फॉर्म (form#form
) है। <script src="/socket.io/socket.io.js"></script>
से Socket.io क्लाइंट लाइब्रेरी इम्पोर्ट होती है। यह ऑटो-जनरेट फाइल है, खुद बनने की जरूरत नहीं।io()
से Socket.io सर्वर से कनेक्शन होता है।- क्लाइंट फॉर्म सबमिट इवेंट सुनेगा, डिफ़ॉल्ट एक्शन रोकेगा और
socket.emit('chat message', input.value)
के जरिए मैसेज भेजेगा। - क्लाइंट सर्वर से आए
'chat message'
को पेज पर जोड़ेगा।
- पेज में सिंपल HTML, CSS (ServBay ब्रांडेड बैनर समेत), मैसेज लिस्ट (
इतना करने पर आपका Socket.io प्रोजेक्ट कोड तैयार है। अब ServBay की मदद से इसे रन व एक्सेस करते हैं।
ServBay के साथ प्रोजेक्ट चलाएँ (डेवलपमेंट मोड)
डेवलपमेंट के वक्त आमतौर पर सीधे Node.js सर्वर रन करते हैं और ServBay के रिवर्स प्रॉक्सी फीचर से उसका लोकल डोमेन से मैपिंग करते हैं।
Node.js डेवलपमेंट सर्वर स्टार्ट करें:
टर्मिनल में प्रोजेक्ट डाइरेक्टरी
/Applications/ServBay/www/servbay-socketio-chat
पर जाएँ और यह चलाएँ (यहाँ पोर्ट 8585 है, बदल सकते हैं):bashcd /Applications/ServBay/www/servbay-socketio-chat PORT=8585 node server.js
1
2इससे सर्वर स्टार्ट होगा, और “Server running on port 8585” जैसा आउटपुट आएगा। आपका सर्वर 8585 पोर्ट पर चलने लगेगा।
ServBay में वेबसाइट (रिवर्स प्रॉक्सी) कॉन्फ़िगर करें:
लोकल डोमेन से एक्सेस व ServBay की SSL/HTTPS सुविधा पाने के लिए रिवर्स प्रॉक्सी वेबसाइट बनाएं:
- ServBay कंट्रोल पैनल खोलें।
- “वेबसाइट्स” (पहले "होस्ट्स") सेक्शन में जाएँ।
- नई वेबसाइट जोड़ने का बटन क्लिक करें।
- ये सेट करें:
- नाम (Name):
ServBay Socket.io Dev
(या मनचाहा नाम) - डोमेन (Domains):
servbay-socketio-dev.servbay.demo
(या कोई.servbay.demo
डोमेन) - वेबसाइट टाइप (Type):
रिवर्स प्रॉक्सी (Reverse Proxy)
- प्रॉक्सी डेस्टिनेशन (Proxy Destination):
http://127.0.0.1:8585
- नाम (Name):
- सेव करें। ServBay बदलाव लागू करेगा और ज़रूरत हो तो अपने वेब सर्वर (Caddy या Nginx) को रीस्टार्ट करेगा।
नोट: रिवर्स प्रॉक्सी Socket.io के लिए जरूरी है, क्योंकि यह सिर्फ HTTP नहीं, बल्कि WebSocket प्रोटोकॉल अपग्रेड भी पास करता है। ServBay के Caddy/Nginx कॉन्फ़िग्स WebSocket सपोर्ट के साथ तैयार हैं।
वेबसाइट जोड़ने के प्रयाप्त स्टेप्स के लिए Node.js डेवलपमेंट वेबसाइट जोड़ें पढ़ें। ServBay में लोकल SSL के लिए SSL/TLS के साथ वेबसाइट सुरक्षित करें देखें।
डेवलपमेंट वेबसाइट खोलें:
ब्राउज़र में
https://servbay-socketio-dev.servbay.demo
खोलें। आपको चैट UI दिखेगा, और एक साथ कई टैब या डिवाइस पर खोलें, तो लाइव चैटिंग टेस्ट कर सकते हैं।
ServBay के साथ प्रोजेक्ट डिप्लॉय करें (प्रोडक्शन मोड)
प्रोडक्शन मोड में आमतौर पर PM2, forever आदि से Node.js ऐप बैकग्राउंड में चलता है और उसकी स्टेबिलिटी बढ़ जाती है। यहाँ हम रिवर्स प्रॉक्सी सेटअप पर ही फोकस करेंगे, मानकर कि Node.js ऐप बैकग्राउंड में पोर्ट पर सही चल रहा है।
Node.js प्रोडक्शन सर्वर स्टार्ट करें:
आमतौर पर प्रोडक्शन में पैकेज मैनेजर से ऐप स्टार्ट करते हैं, ताकि क्रैश होने पर रिलॉन्च हो और बैकग्राउंड में चले। जैसे PM2:
bash# अगर PM2 इंस्टॉल नहीं है # npm install pm2 -g cd /Applications/ServBay/www/servbay-socketio-chat PORT=8586 NODE_ENV=production pm2 start server.js --name servbay-socketio-prod
1
2
3
4
5यह
server.js
को 8586 पर स्टार्ट करेगा,NODE_ENV=production
सेट करेगा और PM2 से मैनेज करवाएगा।ServBay में प्रोडक्शन वेबसाइट (रिवर्स प्रॉक्सी) बनाएं:
जैसे डेवलपमेंट में किया, वैसे ही प्रोडक्शन पोर्ट के लिए नई रिवर्स प्रॉक्सी वेबसाइट बनाएं।
- ServBay कंट्रोल पैनल खोलें।
- “वेबसाइट्स” सेक्शन में जाएँ।
- नई वेबसाइट जोड़ें।
- विवरण भरें:
- नाम (Name):
ServBay Socket.io Prod
- डोमेन (Domains):
servbay-socketio-prod.servbay.demo
- वेबसाइट टाइप (Type):
रिवर्स प्रॉक्सी (Reverse Proxy)
- प्रॉक्सी डेस्टिनेशन (Proxy Destination):
http://127.0.0.1:8586
- नाम (Name):
- सेव करें।
प्रोडक्शन वेबसाइट खोलें:
ब्राउज़र में
https://servbay-socketio-prod.servbay.demo
खोलें।
इस प्रकार, ServBay के रिवर्स प्रॉक्सी फीचर से आप कई Node.js ऐप्स (डेवलपमेंट या प्रोडक्शन मोड) पर काम कर सकते हैं, लोकल डोमेन्स और SSL आसानी से सेट कर सकते हैं—बिना hosts फाइल एडिट या जटिल वेब सर्वर सेटिंग्स के।
ServBay के डेटाबेस से कनेक्ट करें
ServBay विभिन्न डेटाबेस पैकेजेज़ (MySQL, MariaDB, PostgreSQL, MongoDB, Redis आदि) को सपोर्ट करता है। आपका Socket.io ऐप यूज़र डाटा, चैट हिस्ट्री वगैरह स्टोर करने के लिए इनसे कनेक्ट कर सकता है। यहाँ Node.js के जरिए इनसे कनेक्ट करने के मुख्य उदाहरण दिए गए हैं।
महत्वपूर्ण: नीचे के कोड चलाने से पहले, संबंधित डेटाबेस ServBay में इंस्टॉल और चालू हो। उनके डिफ़ॉल्ट कनेक्शन डिटेल्स (पोर्ट, डिफ़ॉल्ट यूज़र/पास आदि) ServBay के डेटाबेस पैनल या डॉक्स में देख सकते हैं। MariaDB/MySQL के root पासवर्ड आमतौर पर इंस्टॉल के वक्त सेट होता है, और ServBay से रीसेट भी हो सकता है।
MongoDB से कनेक्ट करें:
Mongoose ODM (या ऑफिशल
mongodb
ड्राइवर) इंस्टॉल करें:bashnpm install mongoose
1फिर इस तरह कनेक्ट करें:
javascriptconst mongoose = require('mongoose'); // स्थानीय MongoDB (27017 डिफ़ॉल्ट पोर्ट) // डेटाबेस नाम: servbay_socketio_app mongoose.connect('mongodb://localhost:27017/servbay_socketio_app', { useNewUrlParser: true, useUnifiedTopology: true, // user: 'your_mongo_user', // pass: 'your_mongo_password' }) .then(() => console.log('MongoDB सफलतापूर्वक Mongoose से कनेक्ट हुआ')) .catch(err => console.error('MongoDB कनेक्शन त्रुटि:', err)); // अब आप mongoose.model() के साथ स्कीमा एवं मॉडल बना सकते हैं // ...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15Redis से कनेक्ट करें:
Redis क्लाइंट लाइब्रेरी इंस्टॉल करें:
bashnpm install redis
1फिर कनेक्शन लॉजिक:
javascriptconst redis = require('redis'); // Redis क्लाइंट बनाएं, डिफ़ॉल्ट localhost:6379 const client = redis.createClient({ // password: 'your_redis_password', // url: 'redis://localhost:6379' }); client.on('error', (err) => { console.error('Redis कनेक्शन त्रुटि:', err); }); client.on('connect', () => { console.log('Redis क्लाइंट सफलतापूर्वक कनेक्ट हुआ'); }); // Redis सर्वर से कनेक्ट करें (v4+ में connect() जरूरी है) client.connect(); // अब client ऑब्जेक्ट से Redis कमांड चला सकते हैं // जैसे: await client.set('mykey', 'myvalue'); // ...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22MariaDB / MySQL से कनेक्ट करें:
ServBay दोनों को सपोर्ट करता है। यहां
mariadb
पैकेज से उदाहरण:bashnpm install mariadb
1फिर कोड में:
javascriptconst mariadb = require('mariadb'); // कनेक्शन पूल बनाएं const pool = mariadb.createPool({ host: 'localhost', port: 3306, user: 'root', password: 'password', // ServBay में सेट root पासवर्ड डालें database: 'servbay_socketio_app', connectionLimit: 5 }); // कनेक्शन चेक करें pool.getConnection() .then(conn => { console.log("MariaDB/MySQL से सफलता पूर्वक कनेक्ट किया"); conn.release(); // pool से क्वेरी चला सकते हैं, जैसे: await pool.query("SELECT 1"); // ... }) .catch(err => { console.error("MariaDB/MySQL कनेक्शन त्रुटि:", err); });
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23नोट:
password
में अपना वास्तविक root पासवर्ड डालें। हमेशा ऐप के लिए अलग यूज़र बनाएं, root का इस्तेमाल न करें।PostgreSQL से कनेक्ट करें:
PostgreSQL के लिए:
bashnpm install pg
1का प्रयोग करें:
javascriptconst { Pool } = require('pg'); // कनेक्शन पूल बनाएँ const pool = new Pool({ user: 'user', host: 'localhost', database: 'servbay_socketio_app', password: 'password', port: 5432, }); // कनेक्शन चेक करें pool.connect((err, client, done) => { if (err) { console.error('PostgreSQL कनेक्शन त्रुटि:', err); return; } console.log('PostgreSQL से सफलता पूर्वक कनेक्शन हुआ'); client.release(); // pool के माध्यम से क्वेरी चला सकते हैं, जैसे: pool.query('SELECT NOW()', ...); // ... });
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22नोट:
user
औरpassword
अपनी PostgreSQL सेटिंग के अनुसार डालें।
इन डेटाबेस इंटीग्रेशन के साथ, आपका Socket.io ऐप डेटा परसिस्ट कर सकता है और कई एडवांस्ड फीचर्स पाना आसान होगा। ServBay से Node.js और विभिन्न डेटाबेस के साथ लोकल डेवलपमेंट एनवायरनमेंट जल्दी और सुचारू रूप से बनाना संभव है।
ध्यान देने योग्य बातें
- पोर्ट क्लैश: ध्यान रखें कि आपका Node.js ऐप (जैसे 8585 या 8586) किसी और ऐप के पोर्ट से टकरा न जाए। अगर कोई विवाद हो, तो
PORT
वैरिएबल बदलें। - ServBay वेबसाइट कॉन्फ़िगरेशन: रिवर्स प्रॉक्सी वेबसाइट सेट करें, तो देख लें कि ServBay का वेब सर्वर (Caddy/Nginx) नई सेटिंग्स के साथ ठीक से रीस्टार्ट हो गया है।
- WebSocket प्रॉक्सी: डिफ़ॉल्ट रूप से, ServBay की रिवर्स प्रॉक्सी WebSocket प्रोटोकॉल को पास करती है। यदि कोई समस्या आए, तो ServBay लॉग्स/कॉन्फ़िग्स देखें कि सब ठीक है।
- फ़ायरवॉल: अपने OS की फ़ायरवॉल सेटिंग्स जांचें कि ServBay द्वारा इस्तेमाल पोर्ट्स (80, 443 आदि) या Node.js ऐप पोर्ट्स ब्लॉक न हों।