From a8299b6db7214d1dc2e78b2c636d67bb360ad888 Mon Sep 17 00:00:00 2001 From: root Date: Sat, 14 Feb 2026 07:20:53 -0600 Subject: [PATCH] docs: add Feb 14 - SpeedyFoxAI website details, counter fix, nginx path discovery --- memory/2026-02-14.md | 127 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 127 insertions(+) create mode 100644 memory/2026-02-14.md diff --git a/memory/2026-02-14.md b/memory/2026-02-14.md new file mode 100644 index 0000000..6a0ac5b --- /dev/null +++ b/memory/2026-02-14.md @@ -0,0 +1,127 @@ +# Website Details - SpeedyFoxAI + +**Domain:** speedyfoxai.com +**Hosted on:** deb2 (10.0.0.39) +**Web Root:** /root/html/ (Nginx serves from here, NOT /var/www/html/) +**Created:** February 13, 2026 +**Created by:** Kimi (OpenClaw + Ollama) via SSH + +## Critical Discovery +Nginx config (`/etc/nginx/sites-enabled/default`) sets `root /root/html;` +This means `/var/www/html/` is NOT the live document root - `/root/html/` is. + +## Visitor Counter System + +### Current Status +- **Count:** 288 (restored from Feb 13 backup) +- **Location:** `/root/html/count.txt` +- **Persistent storage:** `/root/html/.counter_total` +- **Script:** `/root/html/update_count_persistent.sh` + +### Why It Reset +Old script read from nginx access.log which gets rotated by logrotate. When logs rotate, count drops to near zero. Lost ~350 visits (was ~400+, dropped to 46). + +### Fix Applied +New persistent counter that: +1. Stores total in `.counter_total` file +2. Tracks last log line counted in `.counter_last_line` +3. Only adds NEW visits since last run +4. Handles log rotation gracefully + +## Site Versions + +### Current Live Version +- **File:** `/root/html/index.html` (served by nginx) +- **Source:** `/var/www/html/index.html` (edit here, copy to /root/html/) +- **Style:** Simple HTML/CSS (Rob's Tech Lab theme) +- **Features:** Visitor counter, 3 embedded YouTube videos + +### Backup Version (Full Featured) +- **Location:** `/root/html_backup/20260213_155707/index.html` +- **Style:** Tailwind CSS, full SpeedyFoxAI branding +- **Features:** Dark mode, FAQ section, navigation, full counter + +## YouTube Channel +**Name:** SpeedyFoxAI +**URL:** https://www.youtube.com/@SpeedyFoxAi +**Stats:** 5K+ subscribers, 51+ videos + +### Embedded Videos +1. DIY AI Assistant Setup (kz-4l5roK6k) +2. Self-Hosted Tools Deep Dive (9IYNGK44EyM) +3. OpenClaw + Ollama Workflow (8Fncc5Sg2yg) + +## File Structure + +``` +/root/html/ # LIVE site (nginx root) +├── index.html # Main page +├── count.txt # Visitor count (288) +├── .counter_total # Persistent count storage +├── .counter_last_line # Log line tracking +├── update_count_persistent.sh # Counter script +├── websitememory.md # Documentation +├── downloads.html +├── fox720.jpg +└── favicon.png + +/root/html_backup/ # Backups with timestamps +├── 20260214_071243/ # Pre-counter-script backup +├── 20260214_070713/ # Before counter fix +├── 20260214_070536/ # Full backup +└── 20260213_155707/ # Full version with counter + +/var/www/html/ # Edit source (copy to /root/html/) +└── index.html +``` + +## Technical Details + +### Counter JavaScript +```javascript +fetch("/count.txt?t=" + Date.now()) + .then(r => r.text()) + .then(n => { + document.getElementById("visit-count").textContent = + parseInt(n || 0).toString().padStart(6, "0"); + }); +``` + +### Counter Display +- Location: Footer +- Format: "Visitors: 000288" +- Style: 10px font, opacity 0.5 + +### Backup Strategy +```bash +DT=$(date +%Y%m%d_%H%M%S) +mkdir -p /root/html_backup/${DT} +cp -r /root/html/* /root/html_backup/${DT}/ +cp /var/www/html/* /root/html_backup/${DT}/ +``` + +## SEO & Content +- **Title:** Rob's Tech Lab | Local AI & Self-Hosted Tools +- **Meta:** None (simple version) +- **Schema:** None (simple version) +- **Full version has:** Schema.org FAQPage, structured data + +## Social Links +- YouTube: @SpeedyFoxAi +- Discord: mdkrush +- GitHub: mdkrush +- Twitter: mdkrush + +## Creator +**Name:** Rob +**Brand:** SpeedyFoxAI +**Focus:** Self-hosting, local AI, automation tools +**Personality:** Comical/structured humor + +## Status +- **Counter:** Working (shows 000288) +- **HTML:** Valid structure, no misaligned code +- **Backups:** Multiple timestamps available +- **Documentation:** /root/html/websitememory.md + +Stored: February 14, 2026