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
19 lines
670 B
PHP
19 lines
670 B
PHP
<?php
|
|
session_start([
|
|
'cookie_lifetime' => 86400,
|
|
'cookie_httponly' => true,
|
|
'cookie_samesite' => 'Lax',
|
|
'use_strict_mode' => true
|
|
]);
|
|
|
|
require_once('./class/config.php');
|
|
require_once('./class/functions.php');
|
|
require_once('./class/site.php');
|
|
|
|
if (!empty($_POST)) { $HTML_REQUEST = filter_input_array(INPUT_POST, FILTER_SANITIZE_FULL_SPECIAL_CHARS);}
|
|
if (!empty($_GET)) { $HTML_REQUEST = filter_input_array(INPUT_GET, FILTER_SANITIZE_FULL_SPECIAL_CHARS);}
|
|
if (!empty($HTML_REQUEST)) { require_once(__ROOT__.'/app/controler/request.php'); }
|
|
else {
|
|
$PARAMS = explode("/", $_SERVER['REQUEST_URI']);
|
|
require_once(__ROOT__.'/app/controler/start.php');
|
|
}
|