Redis
 sql >> डेटाबेस >  >> NoSQL >> Redis

उत्पादन पर लारवेल इको सर्वर की मेजबानी के लिए अपाचे रिवर्स प्रॉक्सी को कॉन्फ़िगर करना

अंत में मिल गया।

जबकि मेरी वेबसाइट में अभी भी एक एसएसएल होना चाहिए, इसका समाधान Apache . प्राप्त करना है रीडायरेक्ट करने के लिए /socket.io करने के लिए http://localhost:6001/socket.io redis . के लिए पहले से ही कॉन्फ़िगर किया गया है . फिर 2.2.3 का प्रयोग करें socket io . का संस्करण ।

तो मेरा laravel-echo-server.json SSL के लिए कॉन्फ़िगर नहीं किया गया है।

ये रहा मेरा laravel-echo-server.json :

{
   "authHost": "https://domainName.com",
   "authEndpoint": "/broadcasting/auth",
   "clients": [
      {
        "appId": "xxxxxxx",
        "key": "xxxxxxxxxxx"
      }
   ],
   "database": "redis",
   "databaseConfig": {
      "redis": {},
      "sqlite": {
          "databasePath": "/database/laravel-echo-server.sqlite"
      }
   },
   "devMode": false,
   "host": null,
   "port": "6001",
   "protocol": "http",
   "socketio": {},
   "sslCertPath": "",
   "sslKeyPath": "",
   "sslCertChainPath": "",
   "sslPassphrase": "",
   "subscribers": {
       "http": true,
       "redis": true
   },
   "apiOriginAllow": {
   "allowCors": true,
   "allowOrigin": "*",
   "allowMethods": "GET, POST",
   "allowHeaders": "Origin, Content-Type, X-Auth-Token, X-Requested-With, Accept, Authorization, X-CSRF-TOKEN, X-Socket-Id"
}

}

मैं laravel-echo-server.json का उपयोग कैसे करता हूं:

import Echo from "laravel-echo";
window.io = require('socket.io-client');
// Have this in case you stop running your laravel echo server
if (typeof io !== 'undefined') {
  window.Echo = new Echo({
    broadcaster: 'socket.io',
    host: window.location.hostname,
  });

}

और मेरे एसएसएल virtualhost के भीतर मेरा अपैक्स कॉन्फिगरेशन मेरे डोमेन के लिए:

RewriteEngine On
RewriteCond %{REQUEST_URI}  ^/socket.io            [NC]
RewriteCond %{QUERY_STRING} transport=websocket    [NC]
RewriteRule /(.*)           ws://localhost:6001/$1 [P,L]

ProxyPass        /socket.io http://localhost:6001/socket.io
ProxyPassReverse /socket.io http://localhost:6001/socket.io 

इसके अलावा इसे laravel-echo-server रखने के लिए एक Node js प्रोसेस मैनेजर की आवश्यकता होगी। दौड़ना। इसलिए मैंने echo-server.json created बनाया और निम्नलिखित कोड रखा।

{
  "name": "apps",
  "script": "laravel-echo-server",
  "args": "start"
}

इसके बाद, मैं pm2 स्थापित करता हूं प्रक्रिया प्रबंधक। npm install pm2 -g और मेरी सेवा शुरू की pm2 start echo-server.json --name="apps"

अंत में मैं pm2 list का उपयोग करता हूं मेरी सभी सेवाओं को देखने के लिए और pm2 startup मेरी सेवाओं को चालू रखने के लिए।




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Stackexchange.Redis ConnectionMultiplexer.Connect दो क्लाइंट कनेक्शन क्यों स्थापित करता है?

  2. BookSleeve द्वारा रेडिस में सामग्री मूल्य कैसे खोजें

  3. रेडिस से फ्लिंक तक डेटा पढ़ें

  4. नोड js . के साथ Google ccs को डाउनस्ट्रीम संदेश भेजें

  5. डेटा की तुलना में रेडिस 10 गुना अधिक मेमोरी उपयोग