This commit is contained in:
Dmitry 2025-11-16 19:36:08 +03:00
parent 0c9247f276
commit 89e178042c
3 changed files with 7 additions and 6 deletions

View file

@ -26,6 +26,7 @@
**Scripts Updated:** **Scripts Updated:**
- `backend-build_app_webroot.sh` - Fixed port configuration and webroot setup - `backend-build_app_webroot.sh` - Fixed port configuration and webroot setup
- `backend-build_app.sh` - Fixed port configuration (8443 → 8081) and replaced netstat with ss/lsof
**Next Action:** Verify HTTPS functionality and test API endpoints **Next Action:** Verify HTTPS functionality and test API endpoints

View file

@ -3,7 +3,7 @@ info:
title: Api title: Api
version: 0.0.0 version: 0.0.0
servers: servers:
- url: "http://localhost:8443" - url: "http://localhost:8080"
paths: paths:
/promocodes/<code>/apply: /promocodes/<code>/apply:
post: post:

View file

@ -26,12 +26,12 @@ rm server_build.exe
if [ -d "/etc/letsencrypt/live/api.memo-cards.online" ] && [ -f "/etc/letsencrypt/live/api.memo-cards.online/fullchain.pem" ]; then if [ -d "/etc/letsencrypt/live/api.memo-cards.online" ] && [ -f "/etc/letsencrypt/live/api.memo-cards.online/fullchain.pem" ]; then
echo "✅ Let's Encrypt сертификаты найдены. Запускаем в двойном режиме (HTTP + HTTPS)" echo "✅ Let's Encrypt сертификаты найдены. Запускаем в двойном режиме (HTTP + HTTPS)"
# Обновляем systemd сервис для двойного режима # Обновляем systemd сервис для двойного режима
sudo sed -i 's|ExecStart=$BACKEND_DIR/server.exe.*|ExecStart=$BACKEND_DIR/server.exe --dual --certs /etc/letsencrypt/live/api.memo-cards.online -a 0.0.0.0 -p 8443|' /etc/systemd/system/mnemo_cards_server.service sudo sed -i 's|ExecStart=$BACKEND_DIR/server.exe.*|ExecStart=$BACKEND_DIR/server.exe --dual --certs /etc/letsencrypt/live/api.memo-cards.online -a 0.0.0.0 -p 8081|' /etc/systemd/system/mnemo_cards_server.service
else else
echo "⚠️ Let's Encrypt сертификаты не найдены или повреждены. Пытаемся создать..." echo "⚠️ Let's Encrypt сертификаты не найдены или повреждены. Пытаемся создать..."
# Проверяем, занят ли порт 80 # Проверяем, занят ли порт 80
if sudo netstat -tulpn | grep :80 > /dev/null 2>&1; then if sudo ss -tulpn | grep :80 > /dev/null 2>&1 || sudo lsof -i :80 > /dev/null 2>&1; then
echo "🔍 Порт 80 занят другим процессом. Проверяем возможные веб-сервера..." echo "🔍 Порт 80 занят другим процессом. Проверяем возможные веб-сервера..."
# Пытаемся остановить распространенные веб-сервера # Пытаемся остановить распространенные веб-сервера
@ -49,7 +49,7 @@ else
HTTPD_STOPPED=true HTTPD_STOPPED=true
else else
echo "❓ Порт 80 занят неизвестным процессом:" echo "❓ Порт 80 занят неизвестным процессом:"
sudo netstat -tulpn | grep :80 sudo ss -tulpn | grep :80 || sudo lsof -i :80
echo "💡 Рекомендуется вручную остановить процесс, занимающий порт 80, или использовать webroot режим certbot" echo "💡 Рекомендуется вручную остановить процесс, занимающий порт 80, или использовать webroot режим certbot"
fi fi
fi fi
@ -64,7 +64,7 @@ else
echo "✅ Let's Encrypt сертификат успешно создан!" echo "✅ Let's Encrypt сертификат успешно создан!"
echo "🚀 Запускаем в двойном режиме (HTTP + HTTPS)" echo "🚀 Запускаем в двойном режиме (HTTP + HTTPS)"
# Обновляем systemd сервис для двойного режима # Обновляем systemd сервис для двойного режима
sudo sed -i 's|ExecStart=$BACKEND_DIR/server.exe.*|ExecStart=$BACKEND_DIR/server.exe --dual --certs /etc/letsencrypt/live/api.memo-cards.online -a 0.0.0.0 -p 8443|' /etc/systemd/system/mnemo_cards_server.service sudo sed -i 's|ExecStart=$BACKEND_DIR/server.exe.*|ExecStart=$BACKEND_DIR/server.exe --dual --certs /etc/letsencrypt/live/api.memo-cards.online -a 0.0.0.0 -p 8081|' /etc/systemd/system/mnemo_cards_server.service
else else
echo "❌ Не удалось создать Let's Encrypt сертификат. Запускаем в HTTP режиме" echo "❌ Не удалось создать Let's Encrypt сертификат. Запускаем в HTTP режиме"
echo "💡 Возможные причины и решения:" echo "💡 Возможные причины и решения:"
@ -73,7 +73,7 @@ else
echo " - Сертификат уже был получен ранее - проверьте /etc/letsencrypt/live/" echo " - Сертификат уже был получен ранее - проверьте /etc/letsencrypt/live/"
echo " - Используйте webroot режим если есть веб-сервер: certbot certonly --webroot -w /var/www/html -d api.memo-cards.online" echo " - Используйте webroot режим если есть веб-сервер: certbot certonly --webroot -w /var/www/html -d api.memo-cards.online"
# Возвращаем обычный режим # Возвращаем обычный режим
sudo sed -i 's|ExecStart=$BACKEND_DIR/server.exe.*|ExecStart=$BACKEND_DIR/server.exe -a 0.0.0.0 -p 8443|' /etc/systemd/system/mnemo_cards_server.service sudo sed -i 's|ExecStart=$BACKEND_DIR/server.exe.*|ExecStart=$BACKEND_DIR/server.exe -a 0.0.0.0 -p 8081|' /etc/systemd/system/mnemo_cards_server.service
fi fi
# Возвращаем веб-сервера в исходное состояние # Возвращаем веб-сервера в исходное состояние