လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Nginx ကိုအပြည့်အ 0 လမ်းညွှန်ကွန်ရက်ခရတ် proxy အထောက်အပံ့ကိုပြင်ဆင်ခြင်း

Nginx ကိုအပြည့်အ 0 လမ်းညွှန်ကွန်ရက်ခရတ် proxy အထောက်အပံ့ကိုပြင်ဆင်ခြင်း

M66 2025-07-09

Websock Protocol နှင့် Nginx Proxy အကြားဆက်နွယ်မှု

TCP အခြေပြု TwoTs Way Communicen Communicen Two Way Communice Protocol သည် TCP အခြေပြု Two-Way Communication Protocol ဖြစ်ပြီး Real-time ဆက်သွယ်ရေး, အွန်လိုင်းစကားပြောခြင်းနှင့်အခြားအခြေအနေများတွင်ကျယ်ကျယ်ပြန့်ပြန့်အသုံးပြုသည်။ ယေဘုယျအားဖြင့်ပြောရလျှင်အချက်အလက်စီးဆင်းမှုကိုရှေ့တန်းနှင့်နောက်ခံနှင့်နောက်ခံအဆုံးကြားတွင် proxy server မှတဆင့်ကူးယူခြင်းနှင့်နောက်ခံဖြစ်သော Proxy server မှတဆင့်ပြောင်းရွှေ့ရန်လိုအပ်သည်။

Nginx ပတ် 0 န်းကျင်ကိုတပ်ဆင်ပြီးပြင်ဆင်ပါ

configuration မစခင် NGINX ကိုစနစ်တွင်တပ်ဆင်ထားကြောင်းသေချာစေရန်လိုအပ်သည်။ ၎င်းကို install မလုပ်ပါကအသုံးပြုသော operating system အရ Package Manager သို့မဟုတ် Source Code မှတဆင့်၎င်းကို install လုပ်ထားနိုင်သည်။

Nginx Configuration သည် websocket ကိုထောက်ပံ့သည်

/etc/nginx/nginx.conf တွင်တည်ရှိသော Nginx ၏အဓိက configuration file ကိုဖွင့်ပြီးများသောအားဖြင့် http လုပ်ကွက်သို့အောက်ပါအကြောင်းအရာများကိုထည့်ပါ။

 map $http_upgrade $connection_upgrade {
    default upgrade;
    ''      close;
}

upstream backend {
    server 127.0.0.1:8080;
}

မြေပုံ ညွှန်ကြားချက်သည်အဆင့်မြှင့်တင်သူ၏သတင်းအချက်အလက်များကို Websound ၏ဆက်သွယ်မှုလိုအပ်ချက်များနှင့်လိုက်လျောညီထွေဖြစ်အောင်ပြုလုပ်ရန်အသုံးပြုသည်။ အထက်ပိုင်း configuration သည် backend application server ၏လိပ်စာကိုသတ်မှတ်သည်။

ထို့နောက် ဆာဗာ ပိတ်ပင်တားဆီးမှုရှိဝက်ဘ်ဖြည်ရန်တောင်းဆိုမှုများကိုကိုင်တွယ်ရန် configuration ကိုထည့်ပါ။

 location /websocket {
    proxy_pass http://backend;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $connection_upgrade;
}

ဤပြင်ဆင်မှုပိတ်ပင်တားဆီးမှု၏ရည်ရွယ်ချက်မှာမူကျောထောက်နောက်ခံဝန်ဆောင်မှုလမ်းကြောင်းမှ / websoet service သို့တောင်းဆိုမှုများကိုရယူရန်ဖြစ်သည်။

configuration ကိုအကျိုးသက်ရောက်စေရန် Nginx ကို restart လုပ်ပါ

ပြုပြင်ခြင်း configuration ကိုပြီးစီးပြီးနောက် Nginx 0 န်ဆောင်မှုကိုပြန်လည်ဖွင့်ရန်သို့မဟုတ်ပြန်လည်စတင်ရန်လိုအပ်သည်။ အောက်ပါ command ကိုသာ execute:

 <span class="fun">sudo 0 န်ကြီးဌာန Nginx ပြန်လည်စတင်</span>

configuration ကိုအောင်မြင်စွာအကျိုးသက်ရောက်နိုင်မီ syntax အမှားအယွင်းများသို့မဟုတ်ဆိပ်ကမ်းနေရာများမရှိကြောင်းသေချာပါစေ။

Front-end ဥပမာ Websocket ဆက်သွယ်မှု

ဆာဗာဘေးထွက် configuration ကိုပြီးစီးပြီးနောက်သင် WebSid connection ကိုအောင်မြင်စွာထူထောင်နိုင်ခြင်းရှိမရှိစစ်ဆေးရန်ရိုးရှင်းသောရှေ့မျက်နှာပြင်ပုံစံကိုသုံးနိုင်သည်။ ဤတွင် JavaScript ကုဒ်ဥပမာတစ်ခုမှာ -

 var ws = new WebSocket("ws://your_domain/websocket");

ws.onopen = function() {
    console.log("Connected to WebSocket");
};

ws.onmessage = function(event) {
    console.log("Received message: " + event.data);
};

ws.onclose = function() {
    console.log("Disconnected from WebSocket");
};

အထက်ပါကုဒ်ကို HTML ဖိုင်ထဲသို့ထည့်ပါ။ browser တွင်စာမျက်နှာဖွင့်ပြီးနောက် console output များကို "websocket များနှင့်ချိတ်ဆက်ထားသောရလဒ်များ" ဆိုလျှင်ဆက်သွယ်မှုသည်အောင်မြင်သည်ဟုဆိုလိုသည်။

အကျဉ်းချုပ်

ဤဆောင်းပါးတွင် configuration step များမှတဆင့် Nginx Proxy Server သည် websocket protocol ကိုပံ့ပိုးပေးနိုင်ပြီးထိရောက်သောနှစ်လမ်းသွားဆက်သွယ်ရေးစွမ်းရည်ကိုရရှိစေသည်။ ဤဗိသုကာသည်အထူးသဖြင့်အွန်လိုင်းဂိမ်းများ, အချိန်မှန်အချက်အလက် data data data datsp systems များကဲ့သို့သောအချိန်မှန်အပြန်အလှန်ဆက်သွယ်မှုလိုအပ်သည့်အခြေအနေများအတွက်သင့်လျော်သည်။ Nginx သည်အလယ်အလတ် proxy တစ်ခုအဖြစ်သာတည်ရှိပြီး GetEne Websock Service ကို backend application မှသာလုပ်ဆောင်နေဆဲဖြစ်သည်။