Some checks failed
continuous-integration/drone/push Build is failing
✨ Новые возможности: - build-prod теперь проверяет и устанавливает nginx + certbot - Автоматическая настройка проксирования порта 80 → 3000 (frontend) - Настройка маршрутизации API/admin → порт 8000 (backend) - SSL конфигурация с современными стандартами безопасности 🔧 Новые команды: - make build-prod - сборка + nginx настройка - make ssl-cert - получение SSL сертификата - make deploy-full - полное развертывание с SSL 📝 Документация: - docs/NGINX_DEPLOYMENT.md - подробное руководство - scripts/test-nginx-config.sh - тестовый скрипт 🌐 Маршрутизация: - https://links.shareon.kr/ → localhost:3000 (Next.js) - https://links.shareon.kr/api/ → localhost:8000 (Django) - https://links.shareon.kr/admin/ → localhost:8000 (Django) 🔒 Безопасность: HTTPS редирект, HSTS, защитные заголовки
68 lines
2.4 KiB
Bash
Executable File
68 lines
2.4 KiB
Bash
Executable File
#!/bin/bash
|
||
# Тестовый скрипт для демонстрации nginx конфигурации
|
||
|
||
echo "🧪 Тестирование nginx конфигурации для CatLink"
|
||
echo "================================================"
|
||
|
||
# Проверка наличия nginx
|
||
if command -v nginx &> /dev/null; then
|
||
echo "✅ nginx установлен: $(nginx -v 2>&1)"
|
||
else
|
||
echo "❌ nginx не установлен"
|
||
fi
|
||
|
||
# Проверка наличия certbot
|
||
if command -v certbot &> /dev/null; then
|
||
echo "✅ certbot установлен: $(certbot --version 2>&1 | head -1)"
|
||
else
|
||
echo "❌ certbot не установлен"
|
||
fi
|
||
|
||
# Показать пример конфигурации nginx
|
||
echo ""
|
||
echo "📝 Пример конфигурации nginx для links.shareon.kr:"
|
||
echo "================================================"
|
||
cat << 'EOF'
|
||
server {
|
||
listen 80;
|
||
server_name links.shareon.kr sharon.kr;
|
||
return 301 https://$server_name$request_uri;
|
||
}
|
||
|
||
server {
|
||
listen 443 ssl http2;
|
||
server_name links.shareon.kr sharon.kr;
|
||
|
||
# Proxy to frontend (Next.js) на порт 3000
|
||
location / {
|
||
proxy_pass http://localhost:3000;
|
||
proxy_http_version 1.1;
|
||
proxy_set_header Upgrade $http_upgrade;
|
||
proxy_set_header Connection "upgrade";
|
||
proxy_set_header Host $host;
|
||
proxy_set_header X-Real-IP $remote_addr;
|
||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||
proxy_set_header X-Forwarded-Proto $scheme;
|
||
}
|
||
|
||
# Proxy API requests to backend (Django)
|
||
location /api/ {
|
||
proxy_pass http://localhost:8000;
|
||
proxy_set_header Host $host;
|
||
proxy_set_header X-Real-IP $remote_addr;
|
||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||
proxy_set_header X-Forwarded-Proto $scheme;
|
||
}
|
||
}
|
||
EOF
|
||
|
||
echo ""
|
||
echo "🔧 Команды для настройки:"
|
||
echo "========================="
|
||
echo "1. make build-prod # Сборка + установка nginx/certbot + настройка"
|
||
echo "2. make ssl-cert # Получение SSL сертификата"
|
||
echo "3. make deploy-full # Полное развертывание с SSL"
|
||
echo ""
|
||
echo "🌐 После настройки:"
|
||
echo " http://links.shareon.kr → https://links.shareon.kr (порт 3000)"
|
||
echo " https://links.shareon.kr/api/ → Django backend (порт 8000)" |