我正在尝试在运行 ubuntu 14.04 的数字海洋液滴上托管一个小型节点应用程序。在本地开发中,该站点通过 https 运行良好,但在服务器上,该站点不会显示,服务器不会抛出错误,连接只是被拒绝。我运行nmap localhost
后发现端口 443 已关闭。我该如何打开它?
答案1
sudo ufw allow 443/tcp
并阅读有关 Ubuntu UFW iptables 界面的文档。这应该会为您的 Web 应用程序打开它。
还要确保您的应用程序在内部和外部 IP 上提供服务。app.js 文件通常有一个设置来指定它运行的接口。0.0.0.0 应该在内部和外部运行它。
答案2
在 Ubuntu 18.04.1 LTS 上我缺少这个命令:
sudo a2enmod ssl
除其他事项外,这实际上将启用 ssl 模块。
向这个关于在 Ubuntu 上配置 Apache SSL 的完整来源致敬:https://www.maketecheasier.com/apache-server-ssl-support/
答案3
跑步sudo a2ensite default-ssl
对我有用。
答案4
这对我有用。1)创建并安装 2 个证书到 /etc/ssl/certs/server.crt 和 /etc/ssl/private/server.key: https://help.ubuntu.com/14.04/serverguide/certificates-and-security.html
2)编辑文件 /etc/apache2/sites-available/default-ssl.conf 以引用这些证书并在该文件上执行 a2ensite: https://www.digitalocean.com/community/tutorials/how-to-create-a-ssl-certificate-on-apache-for-ubuntu-14-04