如何为我的VPS Web服务器启用HTTPS
P粉966335669
2023-08-13 15:10:44
<p>我通过Namecheap购买了一个VPS,它的IP地址是(示例:162.0.118.14)。它运行在Ubuntu 18上,我可以使用putty或filezilla访问它。</p>
<p>此外,在我的VPS上,我使用Socket.io在端口3000上托管一个网站。因此,您可以使用http://162.0.118.14:3000访问我的html文件/网站。</p>
<p>同时,我通过apache2在端口80上维护一个MySQL数据库,用于登录/注册,因此我可以使用http://162.0.118.14/phpmyadmin访问phpmyadmin。</p>
<p>我还从Namecheap购买了一个域名(示例:test.com)。在其DNS记录中,我为主机@创建了一个URL重定向记录,并将值设置为http://162.0.118.14(掩码)。这个配置将所有流量从域名重定向到我的Web服务器。因此,现在我可以使用http://test.com访问我的网站(之后我将其重定向到:3000)。</p>
<p>然而,目前我只能使用http访问Web服务器,但我希望它能使用https工作。</p>
<p>我搜索并找到了许多教程,介绍如何购买或生成证书,以使Web服务器能够使用HTTPS工作。</p>
<p>因此,我现在想知道,我是否需要购买证书,还是可以自己免费生成一个证书来使HTTPS工作?另外,我如何使它与我的VPS配合工作?</p>
您可以使用letsencrypt免费生成SSL证书,或者从cloudflare获取。
如果您使用的是nginx,则可以在文档中找到如何安装证书的说明:http://nginx.org/en/docs/http/configuring_https_servers.html
如果您使用的是apache:
请记住,https的默认端口是443。如果您的服务器运行在3000端口上,您需要设置反向代理将443端口指向3000端口。
nginx的反向代理配置:https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/