#!/bin/bash
DOMAIN_NAME=baidu.com  #一级备案域名
API_KEY=yhxZMMWwgsdgsagsa552oVxsxVCoZGVxV  #cloudflare秘钥install_ossutil(){cd /opt/srcwget https://gosspublic.alicdn.com/ossutil/1.7.13/ossutil64                           chmod 755 ossutil64cat <<EOF > /root/.ossutilconfig[Credentials]language=CHaccessKeyID=accessKeySecret=endpoint=https://oss-cn-hongkong.aliyuncs.comEOF
}if ! command -v ./ossutil64 &> /dev/null; theninstall_ossutil
figet_zone_id() {#获取域名所在的区域IDcurl -s -X GET "https://api.cloudflare.com/client/v4/zones?name=$DOMAIN_NAME" \-H "Authorization: Bearer $API_KEY" \-H "Content-Type: application/json" | jq -r '.result[].id'
}
ZONE_ID=$(get_zone_id)api_url="https://api.cloudflare.com/client/v4/zones/${ZONE_ID}/dns_records"
auth_headers=("Content-Type: application/json""Authorization: Bearer $API_KEY"
)for name in $(./ossutil64 ls | awk '{print $7}' | sed -n 's/^oss:\/\///p')    #获取所有OSS桶名do#创建CnameTokentoken=$(./ossutil64 bucket-cname --method put --item token "oss://$name" "$name"."$DOMAIN_NAME" 2>&1 >/dev/stdout | sed -n 's/.*<Token>\([^<]*\)<\/Token>.*/\1/p')TXT_RECORD_NAME=_dnsauth.$name.$DOMAIN_NAME    #域名TXT验证名称TXT_RECORD_CONTENT=$token           #域名TXT验证内容echo $TXT_RECORD_CONTENTparams=('{"type":"TXT",'"\"name\":\"${TXT_RECORD_NAME}\",""\"content\":\"${TXT_RECORD_CONTENT}\","'"ttl":1,''"proxied":false''}')response=$(curl -s -X POST "${api_url}" -H "${auth_headers[0]}" -H "${auth_headers[1]}" -d "${params[*]}")record_id=$(echo "${response}" | jq -r '.result.id')echo "DNS record created with ID: ${record_id}"echo "Waiting for DNS propagation..."sleep 60echo "Verifying domain ownership..."domain=$TXT_RECORD_NAMEtxt_record=$TXT_RECORD_CONTENTtxt_result=$(dig +short TXT $domain)if echo "$txt_result" | grep -q "$txt_record"; thenecho "TXT record verification succeeded"#添加CNAME记录CNAME_RECORD_NAME=$name.$DOMAIN_NAMECNAME_RECORD_CONTENT="$name.oss-cn-hongkong.aliyuncs.com"params=('{"type":"CNAME",'"\"name\":\"${CNAME_RECORD_NAME}\",""\"content\":\"${CNAME_RECORD_CONTENT}\","'"ttl":1,''"proxied":false''}')response=$(curl -s -X POST "${api_url}" -H "${auth_headers[0]}" -H "${auth_headers[1]}" -d "${params[*]}")cname_record_id=$(echo "${response}" | jq -r '.result.id')echo "CNAME record created with ID: ${cname_record_id}"elseecho "TXT record verification failed" fi#DNS验证完毕后,开始绑定域名./ossutil64 bucket-cname --method put "oss://$name" "$name"."$DOMAIN_NAME"done

阿里云OSS使用脚本绑定自定义域名相关推荐

  1. 阿里云oss对象存储实现自定义域名

    阿里云oss对象存储实现自定义域名 阿里云OSS配置域名 创建bucket 选择bucket,找到对应的域名管理,绑定用户域名 测试是否成功 参考博客 阿里云OSS域名配置及简单上传

  2. 阿里云虚拟主机子目录绑定二级域名详解

    首先同学说怎么不申请个二级域名?比如mingyue.wangshengfei.com额,好吧,还是我没有这个意识,以前都知道学校的网站,tw.hpu.edu.cn是一个特别的域名.首先知道了这个叫二级 ...

  3. 【探花交友】阿里云OSS、百度人脸识别

    文章目录 1.完善用户信息 1.1.阿里云OSS 1.2.百度人脸识别 1.完善用户信息 用户在首次登录时需要完善个人信息,包括性别.昵称.生日.城市.头像等.其中,头像数据需要做图片上传,这里采用阿 ...

  4. 微信小程序直接上传文件到阿里云OSS组件封装

    微信小程序直接上传文件到OSS 1. 封装公共方法 在根目录utils目录新建一个upload文件夹: // utils/upload/base64.jsvar base64EncodeChars = ...

  5. 【阿里云OSS对象存储搭配CDN加速使用】

    阿里云OSS对象存储搭配CDN加速使用 什么是CDN? 为什么选择阿里云CDN? 按流量计费说明 CDN按流量计费费如下: OSS外网流出流量标准收费如下: 步骤一:准备工作 步骤二.开通CDN 涉及 ...

  6. 阿里云OSS绑定自定义域名

    本章教程,主要介绍阿里云OSS如何绑定自定义域名. 目录 一.打开管理控制台 ​二.进入到Bucket 列表 三.找到域名管理 四.点击绑定域名 五.证书托管 六.解绑域名 一.打开管理控制台 二.进 ...

  7. OSS绑定自定义域名(基于阿里云)

    原理:给自己域名配置CNAME记录,指向OSS; CNAME:详解域名解析记录详解 一.OSS配置别名 对象存储OSS->Bucket列表->点击具体Bucket名称(xxx-image) ...

  8. 阿里云OSS域名配置及简单上传

    目前开发系统,附件文件一般都会使用第三方的存储空间来保存,一方面是为了开发者提供便利,另一方可以减轻系统的访问压力,下面介绍一下阿里云的OSS的一些简单配置和使用. 一.阿里云OSS配置 前提:你需要 ...

  9. docker脚本安装 阿里云_让运行在 Docker 中的 Ghost 支持阿里云 OSS

    本文使用「署名 4.0 国际 (CC BY 4.0)」许可协议,欢迎转载.或重新修改使用,但需要注明来源. 署名 4.0 国际 (CC BY 4.0) 本文作者: 苏洋 创建时间: 2020年03月1 ...

最新文章

  1. 太赞了!NumPy 手写所有主流 ML 模型,由普林斯顿博士后 David Bourgin打造的史上最强机器学习基石项目!...
  2. eol自动化测试系统监控软件,整车EOL诊断系统
  3. 什么时间回复客户邮件最有效?
  4. idea设置打开文件窗口个数
  5. 抓娃娃机爪不动怎么办_黄子韬吃娃娃菜能把临时牙咬断?种植牙到底结实不结实?...
  6. 申请https协议总结
  7. 【转载翻译】Debian配置Networking 和 apt-get 源信息 开启root远程登录权限
  8. 基于mycat的mysql_MySQL基于Mycat实现读写分离
  9. w3c标准的网页内嵌播放器代码
  10. IE下打开ClearType后透明字体问题解决
  11. qstring转string
  12. 算法:Reverse Linked List
  13. 8086CPU寻址方式详解
  14. 财富杂志推荐的75本必读书
  15. 华为信息与网络技术学院2016-2017大学生ICT技能大赛圆满闭幕
  16. android 黑屏定位,如何将黑屏Android修复为正常
  17. Nginx(SPEC文件打包)
  18. ES6之promise天气案例
  19. JS:随机数 或 获取验证码
  20. 《机器学习》心得体会

热门文章

  1. 三菱模拟量fx3u4da_模拟量模块FX3U-4DA模拟量控制篇手册三菱FX3U-4DA用户手册 - 广州凌控...
  2. vue3中不支持filters过滤器
  3. 移动端调用高德地图app和百度app
  4. FreeRTOS多任务管理
  5. ES索引清理脚本-总结
  6. 根据生日计算星座 PHP
  7. 0xc0000225无法进系统_win7系统出现0xc0000225无法进入系统的解决方法
  8. 远景智能后台开发面试感悟
  9. 用IDEA工具实现Maven操作PDF,WORD,PICTURE 案例
  10. ubuntu配置VLAN的方法