国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

nginx配置websocket或https的轉(zhuǎn)發(fā)教程

這篇具有很好參考價(jià)值的文章主要介紹了nginx配置websocket或https的轉(zhuǎn)發(fā)教程。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

1、把普通的IP訪問改為自己的域名,例如我們希望的域名是mywebsocket.test.com,那么前端頁面配置的地址如下

// ws協(xié)議,注意,域名后面的/webSocket自己隨意起,但是要和后臺(tái)保持一直,別訪問不到了
ws://mywebsocket.test.com/webSocket

// wss協(xié)議,需要SSL證書,也就是你的域名必須要支持HTTPS
wss://app116386.eapps.dingtalkcloud.com/webSocket

2、頁面的DEMO如下,比較簡(jiǎn)單

var wesocketServer = "wss://mywebsocket.test.com/webSocket";
var myWebSocket = new WebSocket(wesocketServer);
myWebSocket.onopen = function () {
    var loginMessage = {
        authorization: publicWechatToken,
        event: "AUTHORIZATION",
        source: "WE_CHAT"
    };
    myWebSocket.send(JSON.stringify(loginMessage));
    myWebSocketInterval = setInterval(function(){
        var heartMessage = {
            authorization: publicWechatToken,
            event: "ROBOT_HEARTBEAT",
            source: "WE_CHAT"
        };
        myWebSocket.send(JSON.stringify(heartMessage));
    },30*1000);
}
myWebSocket.onmessage = function (e) {
    var data = JSON.parse(e.data);
    console.log(data);
}
myWebSocket.onclose = function () {
    clearInterval(myWebSocketInterval);
}

3、nginx的配置如下



#user  nobody;
worker_processes  1;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    # 文件大小限制,默認(rèn)1m
    client_max_body_size     50m;
    client_header_timeout    1m;
    client_body_timeout      1m;
    proxy_connect_timeout    60s;
    proxy_read_timeout      1m;
    proxy_send_timeout      1m;
    # websocket需要增加該配置
    map $http_upgrade $connection_upgrade {
      default keep-alive;
      'websocket' upgrade;
  }

    #gzip  on;


    upstream abc_test_websocket_name{
        server 172.168.1.3:9041;
    }
    upstream abc_prod_server_name{
        server 172.168.1.4:8940;
    }
    upstream abc_test_server_name{
        server 172.168.1.5:8990;
    }
    server {
        #監(jiān)聽443端口
        listen 443 ssl;
        #你的域名
        server_name dingtalktest.abc.com;
        #ssl證書的pem文件路徑
        ssl_certificate  /enterprise_wx/ssl/6434864__abc.com.pem;
        #ssl證書的key文件路徑
        ssl_certificate_key /enterprise_wx/ssl/6434864__abc.com.key;

        location /myProject/ {
            # enterprise wechat test
            add_header X-Content-Type-Options nosniff;
            proxy_set_header X-scheme $scheme;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            # 注意必須設(shè)置 Host,否則使用 Java Client 無法正常訪問 MinIO
            proxy_set_header Host $http_host;
            proxy_set_header X-Nginx-Proxy true;
            proxy_hide_header X-Powered-By;
            proxy_hide_header Vary;
            client_max_body_size 2048m; 
            proxy_pass http://abc_test_server_name;
            # 重復(fù)提交情況
            proxy_next_upstream off;
            proxy_read_timeout 600;
			proxy_send_timeout 600;
            proxy_connect_timeout 600;
        }
   
        location /user/ {
            # 這里的8181是自己的nacos
            proxy_pass http://172.168.1.1:8181/user/;
        }
        location /auth/ {
            proxy_pass http://172.168.1.1:8181/auth/;
        }
        location /role/ {
            proxy_pass http://172.168.1.1:8181/role/;
        }
        location / {
            index index.html index.htm;
            root /var/www/myShop/h5;
            # 下面這句話可以解決vue打包部署后,頁面刷新報(bào)404的問題
            try_files $uri $uri/ /index.html;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
        error_page 404 /index.html;
        location = /index.html {
        	root /var/www/myShop/h5;
        }
    }
    server {
        listen 80;
        server_name abc.com;
        
        location / {
            index index.html index.htm;
            root /var/www/myShop/h5;
            # 下面這句話可以解決vue打包部署后,頁面刷新報(bào)404的問題
            try_files $uri $uri/ /index.html;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
        error_page 404 /index.html;
        location = /index.html {
        	root /var/www/myShop/h5;
        }
        location /myProject/ {
            # enterprise wechat test
            add_header X-Content-Type-Options nosniff;
            proxy_set_header X-scheme $scheme;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            # 注意必須設(shè)置 Host,否則使用 Java Client 無法正常訪問 MinIO
            proxy_set_header Host $http_host;
            proxy_set_header X-Nginx-Proxy true;
            proxy_hide_header X-Powered-By;
            proxy_hide_header Vary;
            client_max_body_size 2048m; 
            proxy_pass http://abc_prod_server_name;
            # 重復(fù)提交情況
            proxy_next_upstream off;
            proxy_read_timeout 600;
			proxy_send_timeout 600;
            proxy_connect_timeout 600;
        }

        location /user/ {
            # 這里的8181是自己的nacos
            proxy_pass http://172.168.1.1:8181/user/;
        }
        location /auth/ {
            proxy_pass http://172.168.1.1:8181/auth/;
        }
        location /role/ {
            proxy_pass http://172.168.1.1:8181/role/;
        }

        # 重點(diǎn)在這里,webSocket后面沒有斜杠,和其它項(xiàng)目的區(qū)別
        location /webSocket {
            proxy_pass http://abc_test_websocket_name;
            proxy_read_timeout 300s;
            proxy_send_timeout 300s;
            proxy_redirect off;
            proxy_set_header Host $host:5052;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header REMOTE-HOST $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            #升級(jí)http1.1到 websocket協(xié)議
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection  $connection_upgrade;
        }
   
    }

    server {
        listen       80;
        # 自己需要監(jiān)聽的域名
        server_name abc.com;
        #將請(qǐng)求轉(zhuǎn)成https
        rewrite ^(.*)$ https://$host$1 permanent;
        
    }


}

4、nginx命令,每次nginx.conf修改后,需要重新reload文章來源地址http://www.zghlxwxcb.cn/news/detail-516424.html

#進(jìn)入到nginx/conf文件夾,然后執(zhí)行下面的命令
# cd /usr/local/nginx/conf

# 退出
nginx -s quit

# 重新啟動(dòng)
nginx -s reload

# 啟動(dòng)
nginx

# 停止
nginx -s stop

到了這里,關(guān)于nginx配置websocket或https的轉(zhuǎn)發(fā)教程的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • nginx轉(zhuǎn)發(fā)https:SSL_do_handshake() failed

    大概情況:前端項(xiàng)目是vue,部署到nginx,由于項(xiàng)目中使用了第三方接口,直接訪問會(huì)存在跨域問題,所以使用nginx進(jìn)行轉(zhuǎn)發(fā),但是請(qǐng)求的時(shí)候報(bào)錯(cuò)了。 錯(cuò)誤日志 SSL_do_handshake() failed (SSL: error:14094410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure:SSL alert number 40) while SSL handshaking t

    2024年02月01日
    瀏覽(16)
  • nginx配置SSL證書配置https訪問網(wǎng)站 超詳細(xì)(附加配置源碼+圖文配置教程)

    最近在阿里云上入手了一臺(tái)云服務(wù)器,準(zhǔn)備搭建一套java程序,在 Nginx 配置SSL證書時(shí),配上之后前端可以正常以https的方式打開,但是訪問不到后端,自己也是明明知道是 Niginx 配置的問題,但就不知道錯(cuò)哪了,當(dāng)時(shí)心里的那種感覺真是無法表達(dá)嗚嗚嗚… 經(jīng)過排查發(fā)現(xiàn) 前端訪

    2024年02月11日
    瀏覽(23)
  • Tomcat配置https,JAVA生成ssl證書,http和https雙向配置

    Tomcat配置https,JAVA生成ssl證書,http和https雙向配置

    1、java生成ssl證書 首先要確認(rèn)環(huán)境是否安裝JDK;必須安裝JDK才能生成SSL證書 1.1、服務(wù)器生成證書 服務(wù)器生成證書: 使用keytool為Tomcat生成證書,假定目標(biāo)機(jī)器的域名是“127.0.0.1”,keystore文件存放在“D:omcat.keystore”,口令為“123456”,validity為證書有效時(shí)間當(dāng)前為90天 ?生成命

    2024年02月01日
    瀏覽(24)
  • nginx 如何將 https 請(qǐng)求轉(zhuǎn)發(fā)到 http

    nginx 如何將 https 請(qǐng)求轉(zhuǎn)發(fā)到 http

    網(wǎng)站之前是 https 的,通過 nginx 設(shè)置好了,現(xiàn)在不想用 https 了,但發(fā)散到外界的一些網(wǎng)址還是 https 的,此時(shí)只能通過 nginx 去轉(zhuǎn)發(fā) https 請(qǐng)求到 http 才能實(shí)現(xiàn)之前的鏈接能正常訪問。 具體設(shè)置如下: https 的其它設(shè)置不需要?jiǎng)?,只需要?server 字段添加一條:

    2024年02月11日
    瀏覽(21)
  • SpringBoot + Vue2項(xiàng)目打包部署到服務(wù)器后,使用Nginx配置SSL證書,配置訪問HTTP協(xié)議轉(zhuǎn)HTTPS協(xié)議

    SpringBoot + Vue2項(xiàng)目打包部署到服務(wù)器后,使用Nginx配置SSL證書,配置訪問HTTP協(xié)議轉(zhuǎn)HTTPS協(xié)議

    配置nginx.conf文件,這個(gè)文件一般在/etc/nginx/...中,由于每個(gè)人的體質(zhì)不一樣,也有可能在別的路徑里,自己找找... 證書存放位置,可自定義存放位置 兩個(gè)文件 后端配置 把.pfx拷貝到resource下,然后配置一下yml

    2024年02月02日
    瀏覽(100)
  • Nginx接收Http協(xié)議請(qǐng)求轉(zhuǎn)發(fā)使用Https協(xié)議

    公司使用阿里的apigateway,規(guī)定不太友好,同是SIT環(huán)境,A系統(tǒng)的SIT1環(huán)境居然不能調(diào)用B系統(tǒng)的SIT2環(huán)境的接口。因?yàn)楦鱾€(gè)系統(tǒng)之間部署的SIT環(huán)境數(shù)量不同A系統(tǒng)可能只有1套,B系統(tǒng)可能有8套,這樣的話,可能會(huì)隨時(shí)切換調(diào)用B系統(tǒng)的環(huán)境,管理員不允許,于是想著用Nginx做下轉(zhuǎn)發(fā)。

    2024年02月08日
    瀏覽(28)
  • Nginx轉(zhuǎn)發(fā)http到https和開機(jī)自動(dòng)啟動(dòng)

    Nginx轉(zhuǎn)發(fā)http到https和開機(jī)自動(dòng)啟動(dòng)

    場(chǎng)景: 以下都是基于windows系統(tǒng)(ip為虛構(gòu)) 1.ip:172.16.54.55需要訪問172.16.54.57的接口服務(wù),來查看機(jī)械臂的運(yùn)行狀況 2.存在網(wǎng)絡(luò)隔離,172.16.54.55無法直接訪問172.16.54.57 3.172.16.54.56與172.16.54.57是機(jī)械臂廠商搞得內(nèi)部網(wǎng)絡(luò),彼此可以互通 4.172.16.54.55與172.16.54.56是外部網(wǎng)絡(luò),彼此可以

    2023年04月25日
    瀏覽(21)
  • tengine/nginx https請(qǐng)求 轉(zhuǎn)發(fā) http upstream

    當(dāng)前的互聯(lián)網(wǎng)應(yīng)用基本都要支持https協(xié)議,而當(dāng)瀏覽器頭通過https協(xié)議將請(qǐng)求發(fā)到到負(fù)責(zé)負(fù)載的nginx后,會(huì)由當(dāng)前nginx再以http協(xié)議向后端upstream進(jìn)行請(qǐng)求,之所以這么做是因?yàn)閔ttps協(xié)議的安全性也帶來的額外的性能消耗。而源端基本都是在一個(gè)內(nèi)網(wǎng)里面的,對(duì)于通訊協(xié)議的安全性

    2024年01月23日
    瀏覽(31)
  • nginx負(fù)載轉(zhuǎn)發(fā)源請(qǐng)求http/https:X-Forwarded-Proto及nginx中的轉(zhuǎn)發(fā)報(bào)頭

    今天在排查服務(wù)器的問題時(shí)最后定位到服務(wù)器因?yàn)榻?jīng)過了運(yùn)維這一層的處理,轉(zhuǎn)發(fā)過來的請(qǐng)求不管用戶請(qǐng)求的是https還是http,我們的proxy服務(wù)器收到的都是80端口上的http。于是聯(lián)系相關(guān)部門了解有沒有現(xiàn)成的可用的這樣一個(gè)字段來獲得這個(gè)值。公司用的也是標(biāo)準(zhǔn)報(bào)頭,即X-Fo

    2024年02月16日
    瀏覽(18)
  • 解決:VUE nginx 部署 SSL https訪問 WebSocket 問題

    解決:VUE nginx 部署 SSL https訪問 WebSocket 問題

    報(bào)錯(cuò)1. ?Failed to construct \\\'WebSocket\\\': An insecure WebSocket connection may not be initiated from a page loaded over HTTPS. 報(bào)錯(cuò)2. 說明: http 是?ws:`ws://192.168.110.33:8080/websocket/${this.$store.state.user.name}` https 是 wss: `wss://alarm.shijiguorui.com:443/websocket/${this.$store.state.user.name}` 1. 服務(wù)nginx代理使用http 訪問 W

    2024年01月23日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包