feat: beautiful UI redesign with icons, colors, and improved UX
✨ Added: - Beautiful gradient banner with colors - Icons for all menu items (🔧 🚀 ⚖️ 🌐 etc) - Improved color scheme with better contrast - Enhanced logging with icons (✓ ✗ ⚠ ℹ) - Better spinner animation - Structured menu sections with boxes - Descriptions for all menu items 🎨 Changed: - Redesigned main menu with sections - Redesigned install menu with icons - Redesigned reverse-proxy-manager menu - Updated banner.sh with gradient effects - Enhanced visual hierarchy 💅 Improved: - Better readability with spacing - Consistent icon usage - Professional look and feel - User-friendly interface Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
This commit is contained in:
+92
-46
@@ -304,80 +304,126 @@ EOF
|
||||
# Show configuration tips
|
||||
show_tips() {
|
||||
clear
|
||||
echo -e "${MAGENTA}╔════════════════════════════════════════════════════════════╗${NC}"
|
||||
echo -e "${MAGENTA}║ Подсказки по настройке Reverse Proxy ║${NC}"
|
||||
echo -e "${MAGENTA}╚════════════════════════════════════════════════════════════╝${NC}"
|
||||
echo ""
|
||||
echo -e "${MAGENTA}╔════════════════════════════════════════════════════════════════════╗${NC}"
|
||||
echo -e "${MAGENTA}║${NC} ${WHITE}💡 Подсказки по настройке Reverse Proxy${NC} ${MAGENTA}║${NC}"
|
||||
echo -e "${MAGENTA}╚════════════════════════════════════════════════════════════════════╝${NC}"
|
||||
echo ""
|
||||
|
||||
echo -e "${CYAN}📌 Nginx${NC}"
|
||||
echo " ✓ Лучший выбор для высоких нагрузок"
|
||||
echo " ✓ Отличное кэширование и обработка статики"
|
||||
echo " ✓ Гибкая конфигурация"
|
||||
echo " ✗ Требует ручной настройки SSL"
|
||||
echo -e " ${CYAN}╔═══════════════════════════════════════════════════════════════╗${NC}"
|
||||
echo -e " ${CYAN}║${NC} ${WHITE}🔧 Nginx${NC} ${CYAN}║${NC}"
|
||||
echo -e " ${CYAN}╚═══════════════════════════════════════════════════════════════╝${NC}"
|
||||
echo -e " ${GREEN}✓${NC} Лучший выбор для высоких нагрузок"
|
||||
echo -e " ${GREEN}✓${NC} Отличное кэширование и обработка статики"
|
||||
echo -e " ${GREEN}✓${NC} Гибкая конфигурация"
|
||||
echo -e " ${RED}✗${NC} Требует ручной настройки SSL"
|
||||
echo ""
|
||||
|
||||
echo -e "${CYAN}📌 Caddy${NC}"
|
||||
echo " ✓ Автоматический SSL из коробки"
|
||||
echo " ✓ Простая конфигурация"
|
||||
echo " ✓ HTTP/3 поддержка"
|
||||
echo " ✗ Меньше производительность чем Nginx"
|
||||
echo -e " ${CYAN}╔═══════════════════════════════════════════════════════════════╗${NC}"
|
||||
echo -e " ${CYAN}║${NC} ${WHITE}🚀 Caddy${NC} ${CYAN}║${NC}"
|
||||
echo -e " ${CYAN}╚═══════════════════════════════════════════════════════════════╝${NC}"
|
||||
echo -e " ${GREEN}✓${NC} Автоматический SSL из коробки"
|
||||
echo -e " ${GREEN}✓${NC} Простая конфигурация"
|
||||
echo -e " ${GREEN}✓${NC} HTTP/3 поддержка"
|
||||
echo -e " ${RED}✗${NC} Меньше производительность чем Nginx"
|
||||
echo ""
|
||||
|
||||
echo -e "${CYAN}📌 HAProxy${NC}"
|
||||
echo " ✓ Лучший для балансировки нагрузки"
|
||||
echo " ✓ TCP и HTTP режимы"
|
||||
echo " ✓ Продвинутые health checks"
|
||||
echo " ✗ Не обрабатывает SSL (нужен Nginx/Caddy)"
|
||||
echo -e " ${CYAN}╔═══════════════════════════════════════════════════════════════╗${NC}"
|
||||
echo -e " ${CYAN}║${NC} ${WHITE}⚖️ HAProxy${NC} ${CYAN}║${NC}"
|
||||
echo -e " ${CYAN}╚═══════════════════════════════════════════════════════════════╝${NC}"
|
||||
echo -e " ${GREEN}✓${NC} Лучший для балансировки нагрузки"
|
||||
echo -e " ${GREEN}✓${NC} TCP и HTTP режимы"
|
||||
echo -e " ${GREEN}✓${NC} Продвинутые health checks"
|
||||
echo -e " ${RED}✗${NC} Не обрабатывает SSL (нужен Nginx/Caddy)"
|
||||
echo ""
|
||||
|
||||
echo -e "${CYAN}📌 Гибридные решения${NC}"
|
||||
echo " • Nginx + Caddy: статика + автоSSL"
|
||||
echo " • HAProxy + Nginx: балансировка + кэш"
|
||||
echo " • Caddy + HAProxy: автоSSL + балансировка"
|
||||
echo -e " ${CYAN}╔═══════════════════════════════════════════════════════════════╗${NC}"
|
||||
echo -e " ${CYAN}║${NC} ${WHITE}🔄 Гибридные решения${NC} ${CYAN}║${NC}"
|
||||
echo -e " ${CYAN}╚═══════════════════════════════════════════════════════════════╝${NC}"
|
||||
echo -e " ${BLUE}•${NC} Nginx + Caddy: статика + автоSSL"
|
||||
echo -e " ${BLUE}•${NC} HAProxy + Nginx: балансировка + кэш"
|
||||
echo -e " ${BLUE}•${NC} Caddy + HAProxy: автоSSL + балансировка"
|
||||
echo ""
|
||||
|
||||
echo -e "${YELLOW}Рекомендации:${NC}"
|
||||
echo " 1. Для простых VPN панелей: Caddy"
|
||||
echo " 2. Для высоких нагрузок: Nginx"
|
||||
echo " 3. Для кластера серверов: HAProxy + Nginx"
|
||||
echo " 4. Для максимальной автоматизации: Caddy"
|
||||
echo -e " ${YELLOW}╔═══════════════════════════════════════════════════════════════╗${NC}"
|
||||
echo -e " ${YELLOW}║${NC} ${WHITE}📋 Рекомендации${NC} ${YELLOW}║${NC}"
|
||||
echo -e " ${YELLOW}╚═══════════════════════════════════════════════════════════════╝${NC}"
|
||||
echo -e " ${WHITE}1.${NC} Для простых VPN панелей: ${GREEN}Caddy${NC}"
|
||||
echo -e " ${WHITE}2.${NC} Для высоких нагрузок: ${GREEN}Nginx${NC}"
|
||||
echo -e " ${WHITE}3.${NC} Для кластера серверов: ${GREEN}HAProxy + Nginx${NC}"
|
||||
echo -e " ${WHITE}4.${NC} Для максимальной автоматизации: ${GREEN}Caddy${NC}"
|
||||
echo ""
|
||||
|
||||
read -p "Нажмите Enter для продолжения..."
|
||||
read -p " Нажмите Enter для продолжения..."
|
||||
}
|
||||
|
||||
# Main menu
|
||||
show_main_menu() {
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
|
||||
clear
|
||||
echo -e "${MAGENTA}╔════════════════════════════════════════════════════════════╗${NC}"
|
||||
echo -e "${MAGENTA}║ Reverse Proxy Manager ║${NC}"
|
||||
echo -e "${MAGENTA}║ Version: 2.1.1 ║${NC}"
|
||||
echo -e "${MAGENTA}╚════════════════════════════════════════════════════════════╝${NC}"
|
||||
echo ""
|
||||
echo -e "${CYAN}╔═══════════════════════════════════════════════════════════════════════╗${NC}"
|
||||
echo -e "${CYAN}║${MAGENTA} 🌐 REVERSE PROXY MANAGER ${CYAN}║${NC}"
|
||||
echo -e "${CYAN}║${BLUE} Nginx • Caddy • HAProxy ${CYAN}║${NC}"
|
||||
echo -e "${CYAN}╚═══════════════════════════════════════════════════════════════════════╝${NC}"
|
||||
echo ""
|
||||
|
||||
local installed=$(detect_installed_proxies)
|
||||
echo -e "${CYAN}Установлено:${NC} ${installed:-нет}"
|
||||
if [ -n "$installed" ]; then
|
||||
echo -e " ${GREEN}✓${NC} ${WHITE}Установлено:${NC} ${CYAN}${installed}${NC}"
|
||||
else
|
||||
echo -e " ${GRAY}○${NC} ${GRAY}Ничего не установлено${NC}"
|
||||
fi
|
||||
echo ""
|
||||
|
||||
echo -e "${YELLOW}Установка:${NC}"
|
||||
echo " 1) Установить Nginx"
|
||||
echo " 2) Установить Caddy"
|
||||
echo " 3) Установить HAProxy"
|
||||
echo -e " ${CYAN}╔═══════════════════════════════════════════════════════════════╗${NC}"
|
||||
echo -e " ${CYAN}║${NC} ${WHITE}📦 УСТАНОВКА${NC} ${CYAN}║${NC}"
|
||||
echo -e " ${CYAN}╚═══════════════════════════════════════════════════════════════╝${NC}"
|
||||
echo ""
|
||||
echo -e " ${YELLOW}1.${NC} 🔧 ${WHITE}Установить Nginx${NC}"
|
||||
echo -e " ${GRAY}Высокая производительность и кэширование${NC}"
|
||||
echo ""
|
||||
echo -e " ${YELLOW}2.${NC} 🚀 ${WHITE}Установить Caddy${NC}"
|
||||
echo -e " ${GRAY}Автоматический SSL из коробки${NC}"
|
||||
echo ""
|
||||
echo -e " ${YELLOW}3.${NC} ⚖️ ${WHITE}Установить HAProxy${NC}"
|
||||
echo -e " ${GRAY}Балансировка нагрузки${NC}"
|
||||
echo ""
|
||||
|
||||
echo -e "${YELLOW}Настройка:${NC}"
|
||||
echo " 4) Настроить Nginx для 3x-ui"
|
||||
echo " 5) Настроить Caddy для 3x-ui"
|
||||
echo " 6) Настроить HAProxy (балансировка)"
|
||||
echo " 7) Настроить Nginx + Caddy (гибрид)"
|
||||
echo -e " ${CYAN}╔═══════════════════════════════════════════════════════════════╗${NC}"
|
||||
echo -e " ${CYAN}║${NC} ${WHITE}⚙️ НАСТРОЙКА${NC} ${CYAN}║${NC}"
|
||||
echo -e " ${CYAN}╚═══════════════════════════════════════════════════════════════╝${NC}"
|
||||
echo ""
|
||||
echo -e " ${YELLOW}4.${NC} 🌐 ${WHITE}Настроить Nginx для 3x-ui${NC}"
|
||||
echo -e " ${GRAY}Автоматическая настройка с SSL${NC}"
|
||||
echo ""
|
||||
echo -e " ${YELLOW}5.${NC} 🔐 ${WHITE}Настроить Caddy для 3x-ui${NC}"
|
||||
echo -e " ${GRAY}Автоматический HTTPS${NC}"
|
||||
echo ""
|
||||
echo -e " ${YELLOW}6.${NC} ⚖️ ${WHITE}Настроить HAProxy (балансировка)${NC}"
|
||||
echo -e " ${GRAY}Распределение нагрузки между серверами${NC}"
|
||||
echo ""
|
||||
echo -e " ${YELLOW}7.${NC} 🔄 ${WHITE}Настроить Nginx + Caddy (гибрид)${NC}"
|
||||
echo -e " ${GRAY}Статика + автоматический SSL${NC}"
|
||||
echo ""
|
||||
|
||||
echo -e "${YELLOW}Информация:${NC}"
|
||||
echo " 8) Показать подсказки"
|
||||
echo " 9) Статус сервисов"
|
||||
echo -e " ${CYAN}╔═══════════════════════════════════════════════════════════════╗${NC}"
|
||||
echo -e " ${CYAN}║${NC} ${WHITE}ℹ️ ИНФОРМАЦИЯ${NC} ${CYAN}║${NC}"
|
||||
echo -e " ${CYAN}╚═══════════════════════════════════════════════════════════════╝${NC}"
|
||||
echo ""
|
||||
echo -e " ${YELLOW}8.${NC} 💡 ${WHITE}Показать подсказки${NC}"
|
||||
echo -e " ${GRAY}Рекомендации по выбору${NC}"
|
||||
echo ""
|
||||
echo -e " ${YELLOW}9.${NC} 📊 ${WHITE}Статус сервисов${NC}"
|
||||
echo -e " ${GRAY}Проверка работы установленных proxy${NC}"
|
||||
echo ""
|
||||
|
||||
echo " 0) Выход"
|
||||
echo -e " ${GRAY}─────────────────────────────────────────────────────────────────${NC}"
|
||||
echo ""
|
||||
echo -e " ${YELLOW}0.${NC} 🚪 ${WHITE}Выход${NC}"
|
||||
echo ""
|
||||
echo -e " ${GRAY}─────────────────────────────────────────────────────────────────${NC}"
|
||||
echo ""
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user