我有一台 Linux 服务器,在其上创建了一个公共 Web 应用程序(作为测试),可在此处访问:http://tropo.gps.caltech.edu:9384/jsserve
它按预期工作。如您所见,它通过 http 协议在端口 9384 上提供服务。
但是,我希望这个公共 Web 应用程序可以通过 https 访问。我确实有 SSL 证书,但我想使用 443 以外的其他端口。
这是我的 nginx 配置文件:(相关部分)
server {
listen 44301 ssl;
ssl_certificate [...];
ssl_certificate_key [...];
server_name tropo.gps.caltech.edu;
location /jsserve {
proxy_pass http://tropo.gps.caltech.edu:9384;
}
}
看来我做错了什么,因为我产生了这个:https://tropo.gps.caltech.edu:44301/jsserve,https 被红色划掉,并出现“不安全”警告。此外,我的网络应用程序无法运行(出现滑块,可以移动,但没有响应)。
难道我做错了什么?
答案1
发生这种情况是因为证书是自签名的。如果您签署证书(例如使用 certbot 之类的东西),浏览器上的 ssl 指示器将变为绿色