Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sockets 错误';net::ERR_CERT_COMMON_NAME_INVALID';使用Nginx和Webpack开发服务器_Sockets_Nginx_Webpack_Websocket_Openssl - Fatal编程技术网

Sockets 错误';net::ERR_CERT_COMMON_NAME_INVALID';使用Nginx和Webpack开发服务器

Sockets 错误';net::ERR_CERT_COMMON_NAME_INVALID';使用Nginx和Webpack开发服务器,sockets,nginx,webpack,websocket,openssl,Sockets,Nginx,Webpack,Websocket,Openssl,我有以下问题。我尝试创建一个.NET核心Web API和一个Vue SPA前端 为此,我将Nginx用作windows机器上的服务器 为此.NET生成一个SSL证书。这是在文件夹own certificates中的certmgr中生成的 为了生成Nginx的证书,我导出了这个生成的文件,并按照这个guid进行转换 所以我得到了我的cert.crt和cert.rsa。这两个都是我用于Ngnix的。对于Web API,一切都可以正常工作。但在前端,我总是会遇到以下错误 sockjs.js?9be2

我有以下问题。我尝试创建一个.NET核心Web API和一个Vue SPA前端

为此,我将Nginx用作windows机器上的服务器

为此.NET生成一个SSL证书。这是在文件夹own certificates中的certmgr中生成的

为了生成Nginx的证书,我导出了这个生成的文件,并按照这个guid进行转换

所以我得到了我的cert.crt和cert.rsa。这两个都是我用于Ngnix的。对于Web API,一切都可以正常工作。但在前端,我总是会遇到以下错误

sockjs.js?9be2:1605 GET net::ERR\u CERT\u COMMON\u NAME\u无效

因此,webpack dev服务器无法连接。但我不明白为什么。在这种情况下我做错了什么

这是我的Nginx配置

server {
        listen       58000 ssl;
        server_name  localhost;

        ssl_certificate      domain.crt;
        ssl_certificate_key  domain.rsa;

        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;

        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers  on;

        location / {
            #proxy_buffering    off;
            proxy_set_header   X-Real-IP $remote_addr;
            proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header   Host      $host;
            proxy_set_header X-NginX-Proxy true;
            proxy_pass https://localhost:8081/;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
        }

        location /api {
            proxy_pass https://127.0.0.1:5001;
        }
    }
在我的网页包dev服务器中,我使用以下

module.exports = {
    devServer: {
      https: {
        key: fs.readFileSync('path\\domain.rsa'),
        cert: fs.readFileSync('path\\domain.crt'),
      }
    }
  }
所以对我来说,证书似乎有一些问题。但为什么它只在WebSocket上失败,而在其他方面却没有失败呢

对不起,我对SSL和Nginx不熟悉

sockjs.js?9be2:1605 GET net::ERR\u CERT\u COMMON\u NAME\u无效

这表明您正在使用
192.168.178.145
作为主机名

这表明nginx期望
localhost
作为主机名

不清楚您在证书中配置的真正名称,但很可能不是
192.168.178.145
。这就是错误

这表明您的nginx正在侦听端口5800。错误消息中的URL用于端口8081。这可能表明您显示的nginx配置与实际访问的服务器无关-我不知道端口8081上的服务器是什么

sockjs.js?9be2:1605 GET net::ERR\u CERT\u COMMON\u NAME\u无效

这表明您正在使用
192.168.178.145
作为主机名

这表明nginx期望
localhost
作为主机名

不清楚您在证书中配置的真正名称,但很可能不是
192.168.178.145
。这就是错误


这表明您的nginx正在侦听端口5800。错误消息中的URL用于端口8081。这可能表明您显示的nginx配置与实际访问的服务器无关-我不知道端口8081上的服务器是什么。

Thx端口8081上的响应正在运行我的前端节点服务器,nginx端口58000上运行,因此我认为当访问端口58000时,nginx被传递给8081?@Darem:如果你访问端口8081,它将只访问端口8081。58000端口上的nginx不参与此操作。非常感谢。它解决了我将dev服务器重命名为localhost的问题。所以现在它起作用了。多谢各位@Stefferich你能帮我解决类似的问题吗?端口8081上的响应的Thx正在运行我的前端节点服务器,Nginx在端口58000上运行,因此我认为当访问端口58000时,Nginx将传递给8081?@Darem:如果访问端口8081,它将只访问端口8081。58000端口上的nginx不参与此操作。非常感谢。它解决了我将dev服务器重命名为localhost的问题。所以现在它起作用了。多谢各位@Stefferich你能帮我解决类似的问题吗?
    server_name  localhost;
    ssl_certificate      domain.crt;
    listen       58000 ssl;