Files
jarvis-memory/memory/2026-02-14.md

3.8 KiB

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
  • 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

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

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
  • 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