gpt4 book ai didi

不花钱几分钟让你的站点也支持https

转载 作者:我是一只小鸟 更新时间:2023-02-14 22:31:58 25 4
gpt4 key购买 nike

前言

现在,免费SSL证书已经很普遍了,但是,申请和配置SSL证书仍然是一件较为繁琐的事,修改web服务配置在所难免,且不同的web服务配置方法不一样,不具备通用性。本文介绍一种通用的快速配置方法,web服务只需要做很少的改动(只需要修改端口号即可),支持任何web服务,只需要满足以下条件:

  • 你的服务器能使用podman或者docker
  • 你的站点能通过公网访问

步骤

这里以podman为例(docker用户只需要把 podman 命令替换为 docker 即可) 。

  1. 使用终端登录你的服务器 。

  2. 执行 podman --help 命令检查是否已经安装podman,如果提示命令找不到,则使用下面命令安装 。

    Debian/Ubuntu 20.10+ 系统:

                                
                                  sudo apt-get -y install podman
    
                                
                              

    Centos系统:

                                
                                  sudo yum -y install podman
    
                                
                              

    其他系统可参照podman文档自行安装: https://podman.io/getting-started/installation 。

  3. 如果原web服务的端口号是80,将其改成任意一个非80端口,保证80端口不被占用,这里假设修改后的端口号为8080,服务器内网IP为192.168.1.100 。

  4. 执行如下命令:

    注意: 下面出现的 www.example.com 替换为你的真实域名.

                                
                                      mkdir vhosts
        mkdir data
        touch vhosts/www.example.com.toml
    
                                
                              

    编辑 vhosts/www.example.com.toml 文件,输入如下内容,并保存.

                                
                                  upstream = ["192.168.1.100:8080"]
    
                                
                              
  5. 执行以下命令:

    注意: <YOUR_EMAIL> 替换为你的真实邮箱 。

    需要使用sudo执行的原因是绑定80端口需要root权限,如果你的服务器没有这个限制,可以把sudo去掉,以普通用户权限执行即可.

                                
                                  podman run -d --name nginx-proxy \
       --restart always \
       --env AUTO_SSL=on \
       --env AUTO_SSL_EMAIL=<YOUR_EMAIL> \
       -v "$PWD/vhosts":/etc/nginx-proxy/vhosts:ro \
       -v "$PWD/data":/var/nginx-proxy \
       -p 80:80 \
       -p 443:443 \
       kasonyang/nginx-proxy:latest
    
                                
                              

完成以上步骤后,等待一两分钟即可,输入 https://你的域名 查看是否可以正常访问,如果不行,可以使用 podman logs nginx-proxy 查看一下是否有报错.

SSL证书时效

申请的SSL证书有效期3个月,每天会自动检查,到期前会自动更新,更新不会中断服务.

后续增加域名

后续如果有更多域名需要启用https,就很简单了。参照步骤4,为新域名在 vhosts 目录下创建一个对应的toml配置文件即可。新增文件后,80端口(http)立即可用,443端口(https)需要等待几分钟才能完成生效(申请证书需要时间).

源码

本文使用的docker镜像开源,获取源码可以戳这个链接: https://github.com/kasonyang/docker-nginx-proxy 。

最后此篇关于不花钱几分钟让你的站点也支持https的文章就讲到这里了,如果你想了解更多关于不花钱几分钟让你的站点也支持https的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com