提交 ddf9875f authored 作者: PGY's avatar PGY

```

refactor(generate_ssl.sh): 优化变量声明和去重逻辑

- 将局部变量声明与赋值分离,提高脚本可读性
- 使用mapfile命令替代数组赋值,优化去重逻辑
- 改进代码结构,使变量定义更清晰
```
上级 c8b04937
...@@ -164,7 +164,8 @@ inject_into_nginx_conf(){ ...@@ -164,7 +164,8 @@ inject_into_nginx_conf(){
warn "跳过:配置文件不存在: $conf" warn "跳过:配置文件不存在: $conf"
return 1 return 1
fi fi
local backup="${conf}.bak.$(date +%s)" local backup
backup="${conf}.bak.$(date +%s)"
cp "$conf" "$backup" cp "$conf" "$backup"
info "已备份原配置到: $backup" info "已备份原配置到: $backup"
...@@ -188,8 +189,10 @@ inject_into_nginx_conf(){ ...@@ -188,8 +189,10 @@ inject_into_nginx_conf(){
conf_dir=$(dirname "$conf") conf_dir=$(dirname "$conf")
local cert_store_dir="$conf_dir/certs" local cert_store_dir="$conf_dir/certs"
mkdir -p "$cert_store_dir" mkdir -p "$cert_store_dir"
local src_key="$(pwd)/${KEY_FILE}" local src_key
local src_crt="$(pwd)/${CRT_FILE}" src_key="$(pwd)/${KEY_FILE}"
local src_crt
src_crt="$(pwd)/${CRT_FILE}"
local dest_key="$cert_store_dir/server.key" local dest_key="$cert_store_dir/server.key"
local dest_crt="$cert_store_dir/server.crt" local dest_crt="$cert_store_dir/server.crt"
if [ -f "$src_key" ]; then if [ -f "$src_key" ]; then
...@@ -269,7 +272,7 @@ inject_into_nginx_conf(){ ...@@ -269,7 +272,7 @@ inject_into_nginx_conf(){
# 去重 # 去重
if [ ${#DOCKER_TARGETS[@]} -gt 0 ]; then if [ ${#DOCKER_TARGETS[@]} -gt 0 ]; then
unique_targets=($(printf "%s\n" "${DOCKER_TARGETS[@]}" | awk '!x[$0]++')) mapfile -t unique_targets < <(printf "%s\n" "${DOCKER_TARGETS[@]}" | awk '!x[$0]++')
for ct in "${unique_targets[@]}"; do for ct in "${unique_targets[@]}"; do
info "尝试在容器 $ct 内重载 nginx(优先尝试 nginx -t && nginx -s reload)" info "尝试在容器 $ct 内重载 nginx(优先尝试 nginx -t && nginx -s reload)"
if docker exec "$ct" /usr/local/nginx/sbin/nginx -t >/dev/null 2>&1; then if docker exec "$ct" /usr/local/nginx/sbin/nginx -t >/dev/null 2>&1; then
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论