AWS EC2上にて、WebRTCによる開発を行っているのですが、
SSL化を行ったドメインにて接続を行った際、
コンソール上に「net::ERR_HTTP2_PROTOCOL_ERROR 200」と表示され、
正しく接続が確立されませんでした。
IPアドレスによる接続時は、socket.io.jsファイルの読込などのエラーは表示されておりません。
ロードバランサーを利用し、nginx側にてproxy_passを設定しており、
フロント(/public/index.html)の表示は確認できております。
404エラーの場合は、読込が行えない・ファイルが存在しないといった理由でわかるのですが、
200の場合は、接続は成功していると認識しておりましたが、誤りなのでしょうか。
関連するファイルを以下掲載させていただきます。
node
1"use strict"; 2const express = require( "express" ); 3const http = require( "http" ); 4const socketIO = require( "socket.io" ); 5 6const app = express(); 7const server = http.Server( app ); 8const io = socketIO( server , {cors: { origin: '*', }} ); 9const PORT = 3333; 10 11// 接続時の処理 12io.on( 13 "connection", 14 ( socket ) => 15 { 16 ...... Socket 通信時の処理 17 } 18); 19 20// 読込先ディレクトリの設定 21app.use( express.static( __dirname + "/public" ) ); 22server.listen( 23 PORT, 24 () => { 25 console.log( "Server on port %d", PORT ); 26 } 27); 28
nginx
1## conf file 2server { 3 listen 80; 4 expires off; 5 6 server_name domain.com; 7 location / { 8 proxy_redirect off; 9 proxy_set_header Host $host; 10 proxy_set_header X-Real-IP $remote_addr; 11 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 12 proxy_set_header X-Forwarded-Proto $scheme; 13 proxy_read_timeout 1m; 14 proxy_connect_timeout 1m; 15 proxy_pass http://IP_ADDRESS:3333; 16 } 17}
また、Google Chrome上のHeaderの内容は以下となります。
GoogleChromeHeader
1Request URL: https://domain.com/socket.io/socket.io.js 2Request Method: GET 3Status Code: 200 4Remote Address: *************:443 5Referrer Policy: strict-origin-when-cross-origin 6cache-control: public, max-age=0 7content-type: application/javascript 8date: ************* 9etag: "4.1.2" 10server: nginx/1.18.0 (Ubuntu) 11x-content-encoding-over-network: br 12x-sourcemap: socket.io.js.map 13:authority: domain.com 14:method: GET 15:path: /socket.io/socket.io.js 16:scheme: https 17accept: */* 18accept-encoding: gzip, deflate, br 19accept-language: ja,en-US;q=0.9,en;q=0.8 20cache-control: no-cache 21pragma: no-cache 22referer: https://domain.com/ 23sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="90", "Google Chrome";v="90" 24sec-ch-ua-mobile: ?0 25sec-fetch-dest: script 26sec-fetch-mode: no-cors 27sec-fetch-site: same-origin 28user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36
あなたの回答
tips
プレビュー