avatar

sunday

Sunday's Blog

  • 首页
Home 使用acme.sh和cloudflare托管的域名生成网站的ssl通配符证书
文章

使用acme.sh和cloudflare托管的域名生成网站的ssl通配符证书

Posted 2023-12-18 Updated 2023-12- 18
By sunday
9~11 min read

1.安装acme.sh

在root目录

curl https://get.acme.sh | sh -s [email protected]

2.使用cloudflare的api密钥在服务器上生成环境变量CF_Key和CF_Email

①先去cloudflare(点击这里)官网获取api密钥

获取后在服务器执行,请把CF_Key 和CF_Email 换成自己的

export CF_Key="763eac4f1bcebd8b5c95e9fc50d010b4"
export CF_Email="[email protected]"

3.生成网站的通配符证书

./.acme.sh/acme.sh --issue --dns dns_cf -d example.com -d '*.example.com'

如果遇到下图这种情况,说明ZeroSSL服务商抽风了,可在命令后面加--server letsencrypt ,没遇到的话可跳到第4点

./.acme.sh/acme.sh --issue --dns dns_cf -d example.com -d '*.example.com' --server letsencrypt

或者设置默认的ca证书服务商为letsencrypt

./.acme.sh/acme.sh --set-default-ca --server letsencrypt

4.配置证书

生成的证书地址在/root/.acme.sh/<你的域名名称>/ ,如图

在nginx 里配置证书

server {
  # 如果有资源,建议使用 https + http2,配合按需加载可以获得更好的体验
  listen 443 ssl http2;
  server_name <你的域名名称>;

  # 证书的公私钥
  ssl_certificate /root/.acme.sh/<你的域名名称_ecc>/fullchain.cer;
  ssl_certificate_key /root/.acme.sh/<你的域名名称_ecc>/<你的域名名称>.key;

    # gzip config
    gzip on;
    gzip_min_length 1k;
    gzip_comp_level 9;
    gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
    gzip_vary on;
    gzip_disable "MSIE [1-6]\.";

  location / {
        # 用于配合 browserHistory使用
        try_files $uri $uri/index.html /index.html;

  }
  location /api {
      proxy_pass <你的域名名称,如: https://example.com>;
      proxy_set_header   X-Forwarded-Proto $scheme;
      proxy_set_header   Host              $http_host;
      proxy_set_header   X-Real-IP         $remote_addr;
  }
}

配置好之后,不要忘记执行nginx -s reload重新读取nginx配置

软件安装
软件安装
License:  CC BY 4.0
Share

Further Reading

Dec 30, 2024

解决Windows无法安装到这个磁盘 选中的磁盘具有MBR分区表

1.在Windows安装界面,按下 Shift + F10 组合键,打开命令提示符。 2.执行以下命令 diskpart list disk select disk 0 clean convert gpt #转换成功继续执行 exit #退出diskpart 可以关掉窗口了

Oct 10, 2024

docker-compose安装n8n自动化工作流

1.docker-compose.yml文件配置 services: n8n: image: docker.n8n.io/n8nio/n8n container_name: n8n restart: unless-stopped ports: - "5

Jul 26, 2024

docker compose 安装部署 wordpress

1.docker compose 文件直接部署 按照官方部署教程可能会出现以下报错 No 'wp-config.php' found in /var/www/html, but 'WORDPRESS_...' variables supplied; copying 'wp-config-docker

OLDER

ubuntu系统安装最新的nginx版本

NEWER

国内一键安装docker/compose并替换国内dockerHub镜像源

Recently Updated

  • nextjs15使用better-sqlite3的连接报错问题
  • nextjs + clerk + supabase + realtime 实时监听数据库更改
  • 解决nextjs15使用useLocalStorage报错的问题
  • mac上使用nodejs appium控制chrome浏览器
  • 2024年终总结

Trending Tags

nginx acme 强制跳转HTTPS nodejs 代理 mac 神器 vue3 工具 docker

Contents

©2025 sunday. Some rights reserved.

Using the Halo theme Chirpy