7 languages, 3 pages (What/How/Start), 80-line router, 98KB total.
Features:
- No database, no Composer, no build step — just files on disk
- nginx PHP isolation: only index.php executes
- Bot detection with browser heuristic bypass
- Rate limiting, structured weekly logs, geo-location, Telegram alerts
- Multi-language: Accept-Language auto-detect, nav dropdown
- Article sub-page routing via /start/{slug}
- Apache + Caddy config alternatives documented in Start page
- Sample config — no real keys or secrets
5 lines
1.1 KiB
PHTML
5 lines
1.1 KiB
PHTML
<section class="content-section"><h2 class="section-title">Iniziare</h2><div class="section-content"><h3>⚠️ Passo 1: Configurare il server web</h3><p><strong>Non opzionale.</strong> bare-site richiede queste regole nginx. Copia <code>nginx/default.conf</code> — le tre regole critiche:</p><pre style="background:#f5f5f5;padding:1rem;border-radius:6px;font-size:0.85rem;line-height:1.5;"># 1. SOLO index.php può eseguire PHP
|
|
location = /index.php { fastcgi_pass ...; }
|
|
location ~ \.php$ { return 404; }
|
|
# 2. Tutto passa attraverso index.php
|
|
location / { try_files $uri $uri/ /index.php?$query_string; }</pre><h3>2. Caricare i file</h3><pre style="background:#f5f5f5;padding:1rem;border-radius:6px;font-size:0.9rem;">git clone https://your-repo/bare-site.git /var/www/html/</pre><h3>3. Config</h3><p><code>class/config.php</code> — <code>SITE_NAME</code>, slug, lingue.</p><h3>4. Pagine</h3><p>File <code>.phtml</code> in <code>lng/{lang}/</code> — HTML puro.</p><h3>5. Lingua</h3><p>Aggiungi in <code>config.php</code>, crea la directory, traduci. Appare automaticamente.</p></div></section>
|