反应“ SecurityError:操作不安全。”是因为生产中使用了webpackHotDevClient?

时间:2019-12-18 16:13:42

标签: reactjs nginx webpack digital-ocean

我正在将我的第一个React应用程序部署到运行Debian 10的自定义设置DigitalOcean Droplet。 我通过(或至少尝试)通过使用pm2由npm启动过程提供的nginx代理进行服务。

对于生产版本:

npm run build

我使用来启动服务器

pm2 start npm -- start

Nginx已全部启动并正在运行,并且可以毫无问题地提供纯HTML文件。 HTTPS也可以正常工作。

用于HTTPS的Nginx服务器配置(以防万一):

server {
root /root/react-app-name;
index index.html;

server_name mysecretdomain.com www.mysecretdomain.com;

location / {
    proxy_pass http://localhost:3000;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection 'upgrade';
    proxy_set_header Host $host;
    proxy_cache_bypass $http_upgrade;
}

listen [::]:443 ssl ipv6only=on; # managed by Certbot
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/mysecretdomain.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/mysecretdomain.com/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

access_log /var/log/nginx/mysecretdomain.com.access.log;
error_log /var/log/nginx/mysecretdomain.com.error.log;
}

用于HTTP的Nginx conf(以防万一):

server {
if ($host = www.mysecretdomain.com) {
    return 301 https://$host$request_uri;
}


if ($host = mysecretdomain.com) {
    return 301 https://$host$request_uri;
}

listen 80;
listen [::]:80;

server_name mysecretdomain.com www.mysecretdomain.com;

return 404; # managed by Certbot
}

然后我遇到了以下错误:

FireFox SecurityError 1

FireFox SecurityError 2

我只阅读了大多数答案,通过更改about:config下的设置来处理它,但是我还收到一条错误消息,提示“ SecurityError:无法构造'WebSocket':不安全的WebSocket连接可能不是从通过HTTPS加载的页面启动。” 在Chrome和我尝试过的其他任何设备/浏览器中。 因此可以肯定地说它不是客户端。

我想这与 webpackHotDevClient 有关,由于某种原因,我仍然处于开发模式。我以为该产品应该已经投入生产了?

谢谢您的建议。

0 个答案:

没有答案