我在端口 81 上运行 nginx,在端口 80 上运行 apache。我尝试将 SSL 证书放入 nginx。但它没有工作。
这是我的 nginx 的默认设置:
server{
listen 81;
listen 443 ssl;
server_name 35.154.225.46;
ssl_certificate /etc/nginx/ssl/nginx.crt;
ssl_certificate_key /etc/nginx/ssl/nginx.key;
location / {
proxy_pass http://localhost:8080;
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;
}
}
我按照本教程创建了 SSL 证书:如何在 Ubuntu 14.04 的 Nginx 上创建 SSL 证书
编辑:之前我尝试使用 SSL。我在端口 81 上使用 nginx [node js],在端口 80 上使用 apache [php]。现在我尝试在 nginx 中使用 SSL。现在 Nginx 在默认端口 [80] 上使用 ssl 工作,而 apache 无法工作。我希望两个服务器都能运行。
答案1
您已将端口 441 配置为使用 SSL。端口 81 仍配置为使用 http。如果您尝试使用 https 连接到端口 81,则会收到协议错误,因为服务器使用纯 http 通信,但客户端需要 SSL 响应。
如果您想在端口 81 上使用 ssl,则必须添加关键字ssl
。
listen 81 ssl;