48 lines
2.0 KiB
Bash
Executable File
48 lines
2.0 KiB
Bash
Executable File
#!/bin/bash
|
|
# 一键部署:图片 URL 绝对化修复
|
|
set -e
|
|
PASSWORD="Szgt888."
|
|
HOST="124.221.67.199"
|
|
USER="root"
|
|
REMOTE="/opt/yuyueguahao"
|
|
|
|
SSH="sshpass -p $PASSWORD ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null ${USER}@${HOST}"
|
|
SCP="sshpass -p $PASSWORD scp -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null"
|
|
|
|
echo ">>> STEP 1: 上传后端文件"
|
|
$SCP server/src/utils/url.js ${USER}@${HOST}:${REMOTE}/server/src/utils/url.js
|
|
$SCP server/src/modules/upload/route.js ${USER}@${HOST}:${REMOTE}/server/src/modules/upload/route.js
|
|
$SCP server/src/modules/banner/dto.js ${USER}@${HOST}:${REMOTE}/server/src/modules/banner/dto.js
|
|
$SCP server/src/modules/center/dto.js ${USER}@${HOST}:${REMOTE}/server/src/modules/center/dto.js
|
|
$SCP server/src/modules/homeIntro/dto.js ${USER}@${HOST}:${REMOTE}/server/src/modules/homeIntro/dto.js
|
|
$SCP server/src/modules/hospitalImage/dto.js ${USER}@${HOST}:${REMOTE}/server/src/modules/hospitalImage/dto.js
|
|
$SCP server/src/modules/config/service.js ${USER}@${HOST}:${REMOTE}/server/src/modules/config/service.js
|
|
echo " OK"
|
|
|
|
echo ">>> STEP 2: 重启 PM2"
|
|
$SSH "pm2 restart yuyueguahao-api 2>&1 && sleep 2"
|
|
echo " OK"
|
|
|
|
echo ">>> STEP 3: 验证 API 返回的 URL 是否绝对化"
|
|
echo "--- banners ---"
|
|
$SSH "curl -s 'http://localhost:3000/api/v1/banners?enabled=true' | head -c 500"
|
|
echo ""
|
|
echo ""
|
|
echo "--- centers ---"
|
|
$SSH "curl -s 'http://localhost:3000/api/v1/centers?enabled=true' | head -c 500"
|
|
echo ""
|
|
echo ""
|
|
echo "--- home-intro ---"
|
|
$SSH "curl -s 'http://localhost:3000/api/v1/home-intro' | head -c 500"
|
|
echo ""
|
|
echo ""
|
|
echo "--- home config (取前 800 字符) ---"
|
|
$SSH "curl -s 'http://localhost:3000/api/v1/config/home' | head -c 800"
|
|
echo ""
|
|
echo ""
|
|
echo "--- 找一个 banner image URL 测试可访问性 ---"
|
|
$SSH "curl -s 'http://localhost:3000/api/v1/banners?enabled=true' | python3 -c 'import json,sys;d=json.load(sys.stdin)[\"data\"];print(\"first image url:\", d[0][\"image\"] if d else \"(empty)\")' 2>/dev/null || echo '(no banner)'"
|
|
|
|
echo ""
|
|
echo ">>> DONE"
|