当前位置: 首页 > wzjs >正文

东营 网站建设线上推广费用

东营 网站建设,线上推广费用,网站开发工程师是web吗,中文网站建设中模板效果图,使用教程:申请密钥、改域名、指定你的nginx地址。如果要开启调试模式,改true,然后写死一个证书中存在的id进行测试即可 ,配合crontab定时,自动续签 #!/bin/bash# 调试模式配置 DEBUGfalse # 设为…

效果图,使用教程:申请密钥、改域名、指定你的nginx地址。如果要开启调试模式,改true,然后写死一个证书中存在的id进行测试即可 ,配合crontab定时,自动续签
在这里插入图片描述

#!/bin/bash# 调试模式配置
DEBUG=false  # 设为 true 时使用预定义 CertificateId 直接测试下载流程
DEBUG_CERT_ID="PFLOnElN"  # 预定义的测试用 CertificateId   # 生产环境配置 密钥申请地址:https://console.cloud.tencent.com/cam/capi   
secret_id="****"
secret_key="****"
domain="yaoqinqin.cn"    
max_retry=3                # 最大重试次数
initial_wait=180           # 首次等待180秒(3分钟)
retry_interval=180         # 重试间隔180秒(3分钟)# Nginx配置
nginx_ssl_dir="/usr/local/nginx/ssl"       # 证书存储目录
nginx_bin="/usr/local/nginx/sbin/nginx"    # Nginx可执行文件路径# 腾讯云API签名函数
tencentcloud_api() {local service="$1"local host="$2"local action="$3"local payload="$4"local version="${5:-2019-12-05}"local timestamp=$(date +%s)local date=$(date -u +%Y-%m-%d)local algorithm="TC3-HMAC-SHA256"# 1. 构造规范请求local canonical_request="POST
/content-type:application/json; charset=utf-8
host:$host
x-tc-action:${action,,}content-type;host;x-tc-action
$(echo -n "$payload" | openssl sha256 | awk '{print $2}')"# 2. 构造待签字符串local credential_scope="$date/$service/tc3_request"local hashed_canonical_request=$(echo -n "$canonical_request" | openssl sha256 | awk '{print $2}')local string_to_sign="$algorithm
$timestamp
$credential_scope
$hashed_canonical_request"# 3. 计算签名local secret_date=$(echo -n "$date" | openssl sha256 -hmac "TC3$secret_key" | awk '{print $2}')local secret_service=$(echo -n "$service" | openssl sha256 -mac HMAC -macopt hexkey:"$secret_date" | awk '{print $2}')local secret_signing=$(echo -n "tc3_request" | openssl sha256 -mac HMAC -macopt hexkey:"$secret_service" | awk '{print $2}')local signature=$(echo -n "$string_to_sign" | openssl sha256 -mac HMAC -macopt hexkey:"$secret_signing" | awk '{print $2}')# 4. 发送请求curl -s -X POST "https://$host" \-H "Content-Type: application/json; charset=utf-8" \-H "Host: $host" \-H "X-TC-Action: $action" \-H "X-TC-Timestamp: $timestamp" \-H "X-TC-Version: $version" \-H "X-TC-Region: " \-H "Authorization: TC3-HMAC-SHA256 Credential=$secret_id/$credential_scope, SignedHeaders=content-type;host;x-tc-action, Signature=$signature" \-d "$payload"
}# 调试模式跳过申请直接使用预定义 CertificateId
if [ "$DEBUG" = "true" ]; thenecho "     调试模式已启用,使用预定义 CertificateId: $DEBUG_CERT_ID"certificate_id="$DEBUG_CERT_ID"
else# 1. 正常流程申请证书echo "     正在申请证书 for $domain..."apply_response=$(tencentcloud_api "ssl" "ssl.tencentcloudapi.com" "ApplyCertificate" "{\"DvAuthMethod\":\"DNS_AUTO\",\"DomainName\":\"$domain\"}")certificate_id=$(echo "$apply_response" | jq -r '.Response.CertificateId')if [ -z "$certificate_id" ] || [ "$certificate_id" == "null" ]; thenecho "❌ 证书申请失败:"echo "$apply_response" | jq .exit 1fiecho "✅ 证书申请成功, CertificateId: $certificate_id"# 2. 首次等待echo "⏳ 首次等待${initial_wait}秒确保证书进入签发流程..."for ((s=initial_wait; s>0; s--)); doecho -ne "⏱️  剩余等待时间: ${s}\033[0K\r"sleep 1doneecho -e "\n"
fi# 3. 获取下载链接(带重试)
for ((i=1; i<=$max_retry; i++)); doecho "     正在获取下载链接(尝试第${i}次)..."download_response=$(tencentcloud_api "ssl" "ssl.tencentcloudapi.com" "DescribeDownloadCertificateUrl" "{\"CertificateId\":\"$certificate_id\",\"ServiceType\":\"nginx\"}")download_url=$(echo "$download_response" | jq -r '.Response.DownloadCertificateUrl')if [ -n "$download_url" ] && [ "$download_url" != "null" ]; thenbreakfiif [ $i -lt $max_retry ]; thenecho "⚠️ 获取失败: $(echo "$download_response" | jq -r '.Response.Error.Message')"echo "⏳ ${retry_interval}秒后重试..."for ((s=retry_interval; s>0; s--)); doecho -ne "⏱️  下次尝试剩余: ${s}\033[0K\r"sleep 1doneecho -e "\n"elseecho "❌ 超过最大重试次数"echo "$download_response" | jq .exit 1fi
done# 4. 下载并处理证书
echo "     下载链接: $download_url"
temp_dir=$(mktemp -d)
temp_zip="$temp_dir/cert.zip"if ! wget -q "$download_url" -O "$temp_zip"; thenecho "❌ 证书下载失败"rm -rf "$temp_dir"exit 1
fi# 5. 解压并处理证书文件(修复目录问题)
echo "     解压证书文件..."
unzip -q -o "$temp_zip" -d "$temp_dir"
rm -f "$temp_zip"# 处理可能的子目录(腾讯云默认会在zip中创建 domain_nginx 子目录)
cert_source_dir="$temp_dir"
if [ -d "$temp_dir/${domain}_nginx" ]; thencert_source_dir="$temp_dir/${domain}_nginx"
fi# 6. 替换Nginx证书(强制覆盖所有文件)
echo "     替换Nginx证书..."
if ! cp -f "$cert_source_dir"/* "$nginx_ssl_dir/"; thenecho "❌ 证书文件复制失败"rm -rf "$temp_dir"exit 1
fi# 7. 重载Nginx配置
echo "     重载Nginx配置..."
if ! $nginx_bin -t; thenecho "❌ Nginx配置测试失败,请手动检查"rm -rf "$temp_dir"exit 1
fiif ! $nginx_bin -s reload; thenecho "❌ Nginx重载失败,请手动检查"rm -rf "$temp_dir"exit 1
fi# 清理临时文件
rm -rf "$temp_dir"
echo "     证书更新完成!当前证书文件:"
ls -lh "$nginx_ssl_dir/${domain}"* 2>/dev/null
http://www.dtcms.com/wzjs/432599.html

相关文章:

  • 武汉优化网站技术站长工具官网
  • 福州学做网站杭州百度
  • 温州中小企业网站建设饥饿营销案例
  • 长沙商城网站建设武汉seo搜索优化
  • web2.0网站开发a》成都百度推广开户公司
  • 网站建设费用计入什么会计科目百度网盘客服电话
  • 写真盗版网站怎么做网络软件开发
  • 心理咨询网站平台建设seo推广是什么
  • 公司注册域名查询河北电子商务seo
  • 长春h5建站百度官网下载电脑版
  • 深圳市住房和建设局投诉电话株洲seo优化哪家好
  • ps做网站分辨率自适应查域名备案信息查询
  • 建设工程合同备案优化设计四年级上册语文答案
  • 贵德县建设局网站免费seo营销软件
  • 手机网站用什么软件做泰安网站建设
  • wordpress数据库写文章搜索引擎优化入门
  • 在线装修设计网站推广计划方案
  • 做网站用html还是python好可以做产品推广的软件有哪些
  • 日本域名交易网站品牌策划与推广方案
  • 网站运营方法百度指数行业排行
  • 纯html5 网站seo的优点
  • 网站设计步骤及关键操作怎么写网络营销方式都有哪些
  • 家用100mb光纤做网站免费正能量erp软件下载
  • 互联网营销主要学什么windows优化大师是病毒吗
  • 免费的网站怎么建服装品牌策划及营销推广方案
  • 福田网站建设seo信科免费crm
  • wid2008vps创建网站营销宣传方式有哪些
  • 自己做的网站 怎么放大文件杭州百度推广
  • 室内设计者联盟网站最新消息
  • 上海网站制作方法百度地图导航手机版免费下载