feat: initial commit
This commit is contained in:
Executable
+55
@@ -0,0 +1,55 @@
|
||||
#!/bin/bash
|
||||
# 宝塔建站完成后钩子:为站点启用 Cloak 路由
|
||||
# 用法:post_site.sh <域名> <网站根目录>
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
if [[ -f /etc/cloaka.env ]]; then
|
||||
# shellcheck disable=SC1091
|
||||
source /etc/cloaka.env
|
||||
fi
|
||||
CLOAK_ROOT="${CLOAK_ROOT:-/www/cloaka}"
|
||||
|
||||
SITE_DOMAIN="${1:-}"
|
||||
SITE_PATH="${2:-}"
|
||||
MARK_BEGIN="# BEGIN IPCLOAKAPI"
|
||||
MARK_END="# END IPCLOAKAPI"
|
||||
|
||||
[[ -z "$SITE_DOMAIN" ]] && exit 0
|
||||
|
||||
VHOST="/www/server/panel/vhost/nginx/${SITE_DOMAIN}.conf"
|
||||
SNIPPET_INST="${CLOAK_ROOT}/deploy/baota/nginx/cloaka-site.conf.installed"
|
||||
|
||||
if [[ ! -f "$VHOST" ]]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [[ ! -f "$SNIPPET_INST" ]]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if ! grep -qF "$MARK_BEGIN" "$VHOST" 2>/dev/null; then
|
||||
{
|
||||
echo ""
|
||||
echo "$MARK_BEGIN"
|
||||
cat "$SNIPPET_INST"
|
||||
echo "$MARK_END"
|
||||
} >> "$VHOST"
|
||||
fi
|
||||
|
||||
if [[ -f "${CLOAK_ROOT}/cong.php" ]]; then
|
||||
php -r "
|
||||
require '${CLOAK_ROOT}/cong.php';
|
||||
require '${CLOAK_ROOT}/lib/Cloak/DomainRepository.php';
|
||||
try {
|
||||
\$pdo = DomainRepository::pdo();
|
||||
DomainRepository::ensureTable(\$pdo);
|
||||
\$host = DomainRepository::normalizeHostname('${SITE_DOMAIN}');
|
||||
if (!DomainRepository::findByHostname(\$pdo, \$host)) {
|
||||
DomainRepository::add(\$pdo, \$host);
|
||||
}
|
||||
} catch (Throwable \$e) {}
|
||||
" 2>/dev/null || true
|
||||
fi
|
||||
|
||||
nginx -t 2>/dev/null && nginx -s reload 2>/dev/null || true
|
||||
Reference in New Issue
Block a user