secubox-openwrt/package/secubox/luci-app-cdn-cache/README.md
CyberMind-FR 31a87c5d7a feat(structure): reorganize luci-app packages into package/secubox/ + appstore migration
Major structural reorganization and feature additions:

## Folder Reorganization
- Move 17 luci-app-* packages to package/secubox/ (except luci-app-secubox core hub)
- Update all tooling to support new structure:
  - secubox-tools/quick-deploy.sh: search both locations
  - secubox-tools/validate-modules.sh: validate both directories
  - secubox-tools/fix-permissions.sh: fix permissions in both locations
  - .github/workflows/test-validate.yml: build from both paths
- Update README.md links to new package/secubox/ paths

## AppStore Migration (Complete)
- Add catalog entries for all remaining luci-app packages:
  - network-tweaks.json: Network optimization tools
  - secubox-bonus.json: Documentation & demos hub
- Total: 24 apps in AppStore catalog (22 existing + 2 new)
- New category: 'documentation' for docs/demos/tutorials

## VHost Manager v2.0 Enhancements
- Add profile activation system for Internal Services and Redirects
- Implement createVHost() API wrapper for template-based deployment
- Fix Virtual Hosts view rendering with proper LuCI patterns
- Fix RPCD backend shell script errors (remove invalid local declarations)
- Extend backend validation for nginx return directives (redirect support)
- Add section_id parameter for named VHost profiles
- Add Remove button to Redirects page for feature parity
- Update README to v2.0 with comprehensive feature documentation

## Network Tweaks Dashboard
- Close button added to component details modal

Files changed: 340+ (336 renames with preserved git history)
Packages affected: 19 luci-app, 2 secubox-app, 1 theme, 4 tools

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-01 14:59:38 +01:00

4.4 KiB

SecuBox CDN Cache Dashboard

Version: 1.0.0
Last Updated: 2025-12-28
Status: Active

OpenWrt License SecuBox

Dashboard LuCI pour gérer un proxy cache CDN local sur OpenWrt. Optimisez votre bande passante en cachant le contenu web fréquemment accédé.

CDN Cache Dashboard

🎯 Fonctionnalités

  • 📊 Dashboard temps réel — Statistiques de hit ratio, économies de bande passante
  • 💾 Gestion du cache — Visualisation des objets en cache, purge sélective
  • 📋 Policies configurables — Règles par domaine, extension, durée
  • 📈 Graphiques statistiques — Évolution du hit ratio et des économies
  • 🔧 Maintenance — Purge, préchargement, logs, redémarrage
  • ⚙️ Configuration complète — Taille cache, port, mode transparent

📦 Installation

Depuis les packages SecuBox

opkg update
opkg install luci-app-cdn-cache

Compilation manuelle

# Cloner dans le SDK OpenWrt
git clone https://github.com/gkerma/luci-app-cdn-cache.git package/luci-app-cdn-cache

# Compiler
make package/luci-app-cdn-cache/compile V=s

🔧 Configuration

Via LuCI

  1. Accéder à Services → CDN Cache → Settings
  2. Configurer la taille du cache, le port et les policies
  3. Activer le service

Via UCI

# Activer le service
uci set cdn-cache.main.enabled=1
uci set cdn-cache.main.cache_size=2048
uci set cdn-cache.main.listen_port=3128
uci commit cdn-cache

# Redémarrer
/etc/init.d/cdn-cache restart

Configuration client

Configurez vos appareils pour utiliser le proxy :

Proxy HTTP: 192.168.1.1:3128

Ou utilisez le mode transparent avec des règles iptables.

📊 Policies de Cache

Les policies définissent quoi cacher et pour combien de temps :

Policy Domaines Extensions Durée
Windows Update windowsupdate.com, download.microsoft.com exe, msu, cab 7 jours
Linux Repos archive.ubuntu.com, deb.debian.org deb, rpm 3 jours
Static Content * js, css, png, jpg, woff 1 jour

🚫 Exclusions

Certains domaines ne doivent jamais être cachés :

  • Sites bancaires — Sécurité
  • Streaming vidéo — Contenu temps réel
  • APIs dynamiques — Données changeantes

📁 Structure du Package

luci-app-cdn-cache/
├── Makefile
├── htdocs/luci-static/resources/
│   ├── view/cdn-cache/
│   │   ├── overview.js        # Dashboard principal
│   │   ├── cache.js           # Gestion du cache
│   │   ├── policies.js        # Configuration policies
│   │   ├── statistics.js      # Graphiques stats
│   │   ├── maintenance.js     # Outils maintenance
│   │   └── settings.js        # Configuration
│   └── cdn-cache/
│       ├── api.js             # API RPC
│       └── dashboard.css      # Styles
└── root/
    ├── etc/
    │   ├── config/cdn-cache   # Configuration UCI
    │   └── init.d/cdn-cache   # Script init
    └── usr/
        ├── libexec/rpcd/cdn-cache  # Backend RPCD
        └── share/
            ├── luci/menu.d/   # Menu LuCI
            └── rpcd/acl.d/    # ACL

🔗 API RPCD

Méthode Description
status État du service
stats Statistiques globales
cache_list Liste des objets en cache
top_domains Top domaines par usage
bandwidth_savings Économies de bande passante
purge_cache Vider tout le cache
purge_domain Vider cache d'un domaine
preload_url Précharger une URL

🔧 Dépendances

  • luci-base — Framework LuCI
  • nginx-ssl — Serveur proxy
  • rpcd — Daemon RPC
  • coreutils-stat — Utilitaires

📈 Performances

Avec une configuration optimale :

  • Hit ratio : 60-80% typique
  • Économies : 40-60% de bande passante
  • Latence : < 1ms pour les hits

🔗 Liens

📄 Licence

Apache-2.0 © 2025 CyberMind.fr