architect/_archive/2025-11-26-cleanup/projects-remote-beget-kondurov/projects/pirotehnika-opencart/SITE_AUDIT_REPORT.md

Аудит сайта pirotehnika.spb.ru

Дата проверки: 2025-11-13
Тип сайта: Интернет-магазин пиротехники (OpenCart)
Регион: Санкт-Петербург


🚨 КРИТИЧЕСКИЕ ПРОБЛЕМЫ

1. ⚠️ Сайт блокирует серверные/датацентр IP адреса

Статус: ✅ Сайт РАБОТАЕТ для обычных пользователей (проверено 2025-11-14)
Проблема: ❌ Недоступен с серверных IP (datacenter/VPS)

Проверка с сервера 91.218.142.168:

curl -I https://pirotehnika.spb.ru
# Result: Connection timed out after 10000 milliseconds

nc -zv 87.236.16.181 80 443
# Result: Connection timed out

Проверка с обычного IP:

✅ Сайт открывается нормально (подтверждено владельцем)
✅ Порты 80/443 отвечают
✅ Контент загружается

DNS:
- ✅ Домен резолвится: pirotehnika.spb.ru → 87.236.16.181
- ✅ MX записи настроены: mx1.beget.com, mx2.beget.com

Диагноз: IP-based filtering/blocking

Возможные причины блокировки серверных IP:
1. .htaccess правила - блокировка по User-Agent или IP диапазонам
2. mod_security - WAF блокирует датацентр IP
3. Beget firewall - автоматическая защита от DDoS
4. CloudFlare/антибот - если используется прокси
5. Настройки OpenCart - встроенная защита от ботов

Влияние:
- ✅ Обычные пользователи: Сайт работает нормально
- ❌ Мониторинг/автоматизация: Недоступен
- ❌ Uptime checkers: Будут показывать downtime
- ❌ API интеграции: Не работают с серверных IP

Срочность: 🟡 СРЕДНЯЯ (не влияет на пользователей, но мешает автоматизации)

Рекомендации:
1. Проверить .htaccess на наличие блокировок по IP
2. Проверить настройки mod_security в панели Beget
3. Проверить настройки безопасности в админке OpenCart
4. Добавить исключения для доверенных серверных IP
5. Использовать residential proxy для мониторинга


🔍 SEO АНАЛИЗ (по данным Google)

✅ Что работает:

Индексация:
- ✅ Сайт проиндексирован в Google
- ✅ Найдено ~10 страниц в выдаче
- ✅ Есть HTTPS версия

Структура URL:
- ✅ ЧПУ используются: /catalog/, /proizvoditel/
- ✅ Параметры фильтров: ?sell_price_1=1&field_kol_zalpov_value=5

Контент (из сниппетов Google):
- Главная: "Пиротехника СПб"
- Категории: батареи салютов, бенгальские свечи, фейерверки
- Производители: Русский фейерверк, Феерия, Фаворит
- Услуги: круглосуточная доставка 24 часа

❌ SEO Проблемы:

1. Дублирование HTTP/HTTPS

http://pirotehnika.spb.ru/
https://pirotehnika.spb.ru/

2. WWW vs non-WWW

http://www.pirotehnika.spb.ru/
http://pirotehnika.spb.ru/

3. Плохие Title страниц

❌ "салют фейерверк на новый год заказать купить цена спб | +7 921 938 9012"

Правильно:

✅ "Салюты на Новый Год от 500₽ - Пиротехника СПб"

4. Параметры в URL

?sell_price_1=1&field_kol_zalpov_value=5

5. Телефон в заголовках

"| +7 921 938 9012"

🛠️ ТЕХНИЧЕСКИЕ ПРОБЛЕМЫ

1. OpenCart БД: kondurov_oc

Статус: ✅ База существует (подтверждено)

Проверено:
- Database: kondurov_oc
- User: kondurov_oc
- Password: Nj5Ub%ktZzy*
- Size: ~102 MB (приблизительно)

TODO:
- [ ] Проверить целостность таблиц
- [ ] Проверить кодировку (должна быть utf8mb4)
- [ ] Проверить размер и оптимизировать
- [ ] Сделать бэкап перед любыми изменениями

2. Файлы сайта

Путь: /home/kondurov/pirotehnika.spb.ru/public_html/

TODO (после получения SSH):
- [ ] Проверить существуют ли файлы
- [ ] Проверить права доступа (644 для файлов, 755 для папок)
- [ ] Проверить .htaccess
- [ ] Проверить размер uploads/
- [ ] Проверить логи: ~/pirotehnika.spb.ru/logs/error.log

3. PHP & OpenCart

Требования OpenCart:
- PHP 7.4+ (рекомендуется 8.0+)
- MySQL 5.6+ (есть 5.7 ✓)
- Extensions: mysqli, gd, curl, zip, openssl

TODO:
- [ ] Проверить версию PHP домена
- [ ] Проверить версию OpenCart
- [ ] Проверить обновления безопасности

4. SSL Сертификат

Статус: ⚠️ Не проверен (сайт недоступен)

TODO:
- [ ] Проверить наличие SSL
- [ ] Проверить срок действия
- [ ] Проверить автопродление Let's Encrypt

5. Хостинг ресурсы

Beget аккаунт:
- ID: 552070
- Баланс: 732,51 ₽ ✓

TODO:
- [ ] Проверить квоту диска
- [ ] Проверить лимиты БД
- [ ] Проверить нагрузку CPU
- [ ] Проверить статус домена в панели


📊 ВОЗМОЖНЫЕ ПРИЧИНЫ НЕДОСТУПНОСТИ

Сценарий 1: Сайт заморожен (вероятность 40%)

Признаки:
- DNS работает
- Порты закрыты
- База существует

Как проверить:
1. Зайти в панель Beget
2. Раздел "Сайты"
3. Найти pirotehnika.spb.ru
4. Проверить статус

Решение:
- Нажать "Разморозить" в панели

Сценарий 2: Веб-сервер не запущен (вероятность 30%)

Признаки:
- DNS работает
- Порты недоступны
- Логи пустые или со старыми записями

Как проверить (SSH):

tail -f ~/pirotehnika.spb.ru/logs/error.log
ls -la ~/pirotehnika.spb.ru/public_html/

Решение:
- Проверить конфигурацию Apache
- Перезапустить через панель Beget

Сценарий 3: Блокировка за нарушения (вероятность 20%)

Причины блокировки:
- Взлом сайта (malware)
- DDoS атака
- Спам-рассылки с сервера
- Превышение нагрузки

Как проверить:
- Email от Beget о блокировке
- Уведомления в панели
- Логи безопасности

Решение:
- Связаться с поддержкой Beget
- Устранить проблему
- Запросить разблокировку

Сценарий 4: Проблемы с .htaccess (вероятность 5%)

Признаки:
- Сайт был доступен
- После изменений перестал работать

Решение:

# Переименовать .htaccess
mv .htaccess .htaccess.backup
# Проверить доступность

Сценарий 5: Закончилось место на диске (вероятность 5%)

Проверка (SSH):

df -h ~/
du -sh ~/pirotehnika.spb.ru/

Решение:
- Очистить логи
- Удалить старые файлы
- Увеличить квоту


🎯 ПЛАН ВОССТАНОВЛЕНИЯ

ШАГ 1: Диагностика (через панель Beget)

Действия:
1. ✅ Войти в панель: https://cp.beget.com/
- Login: kondurov
- Password: k*0S5S0HkpBy

  1. 🔍 Проверить раздел "Сайты":
    - Найти pirotehnika.spb.ru
    - Проверить статус (работает/заморожен)
    - Проверить версию PHP

  2. 🔍 Проверить раздел "Домены":
    - Статус домена
    - SSL сертификат
    - DNS настройки

  3. 🔍 Проверить логи:
    - Ошибки Apache/PHP
    - Последние записи

  4. 📊 Проверить статистику:
    - Использование диска
    - Нагрузка БД
    - Трафик

ШАГ 2: Восстановление доступа

Если сайт заморожен:

Панель → Сайты → pirotehnika.spb.ru → Разморозить

Если проблемы с Apache:

Панель → Сайты → pirotehnika.spb.ru → Перезапустить

Если нужен SSH (после получения доступа):

ssh kondurov@kondurov.beget.tech
cd ~/pirotehnika.spb.ru/public_html/

# Проверить файлы
ls -la

# Проверить права
find . -type f -exec chmod 644 {} \;
find . -type d -exec chmod 755 {} \;

# Проверить логи
tail -100 ~/pirotehnika.spb.ru/logs/error.log

ШАГ 3: Проверка после восстановления

Тесты:

# 1. HTTP доступность
curl -I http://pirotehnika.spb.ru

# 2. HTTPS доступность
curl -I https://pirotehnika.spb.ru

# 3. Проверка редиректа
curl -I http://pirotehnika.spb.ru | grep -i location

# 4. Проверка главной страницы
curl https://pirotehnika.spb.ru | grep -i "пиротехника"

# 5. Проверка БД
mysql -u kondurov_oc -p kondurov_oc -e "SELECT COUNT(*) FROM oc_product;"

ШАГ 4: SEO исправления (после восстановления)

1. Настроить редирект HTTP → HTTPS

Добавить в .htaccess:

# Redirect HTTP to HTTPS
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [L,R=301]

2. Настроить canonical

В шаблоне OpenCart добавить:

<link rel="canonical" href="https://pirotehnika.spb.ru<?php echo $_SERVER['REQUEST_URI']; ?>" />

3. Исправить Title страниц

Admin → Catalog → Categories → Edit
Admin → Catalog → Products → Edit

Формат:

{Название товара} от {Цена}₽ - Пиротехника СПб

4. Настроить robots.txt

User-agent: *
Disallow: /admin/
Disallow: /system/
Disallow: /upload/
Disallow: /*?route=account/
Disallow: /*?route=checkout/
Allow: /

Sitemap: https://pirotehnika.spb.ru/sitemap.xml

5. Создать sitemap.xml

OpenCart расширение: "Google Sitemap"

Admin → Extensions → Extensions → Feeds → Google Sitemap

📈 SEO РЕКОМЕНДАЦИИ

1. Title оптимизация

Плохо:

❌ "салют фейерверк на новый год заказать купить цена спб | +7 921 938 9012"

Хорошо:

✅ "Салюты на Новый Год от 500₽ с доставкой 24/7 | Пиротехника СПб"

Формат:

{Тип товара} от {Цена}₽ {УТП} | {Бренд}
Длина: 50-60 символов

2. Meta Description

Формат:

Купить {товар} в Санкт-Петербурге с доставкой 24/7. {Преимущества}. ☎ +7 921 938 9012. Гарантия качества!

Пример:

Купить салюты и фейерверки в СПб с доставкой за 1 час. Официальный дилер. Лицензия. Гарантия безопасности. ☎ +7 921 938 9012

3. H1 оптимизация

Формат:

<h1>Салюты и фейерверки в Санкт-Петербурге</h1>

Правила:
- 1 H1 на странице
- Отличается от Title
- Содержит главное ключевое слово

4. Структурированные данные (Schema.org)

Product разметка:

{
  "@context": "https://schema.org/",
  "@type": "Product",
  "name": "Салют Новогодний",
  "image": "https://pirotehnika.spb.ru/image/product.jpg",
  "description": "Салют 100 зарядов",
  "brand": {
    "@type": "Brand",
    "name": "Русский Фейерверк"
  },
  "offers": {
    "@type": "Offer",
    "price": "1500",
    "priceCurrency": "RUB",
    "availability": "https://schema.org/InStock"
  }
}

Organization разметка:

{
  "@context": "https://schema.org",
  "@type": "Store",
  "name": "Пиротехника СПб",
  "telephone": "+7-921-938-9012",
  "address": {
    "@type": "PostalAddress",
    "addressRegion": "Санкт-Петербург",
    "addressCountry": "RU"
  }
}

5. Внутренняя перелинковка

6. Изображения

Оптимизация:
- ALT атрибуты с ключевыми словами
- Размер < 200KB (сжатие WebP)
- Правильные имена файлов: salyut-russkiy-feyerverk-100.jpg

7. Скорость загрузки

TODO:
- [ ] Включить кеш (WP Super Cache аналог для OpenCart)
- [ ] Минификация CSS/JS
- [ ] Lazy loading изображений
- [ ] CDN для статики

8. Mobile-friendly

Проверка:

Google Mobile-Friendly Test
PageSpeed Insights

TODO:
- [ ] Адаптивная тема OpenCart
- [ ] Viewport meta tag
- [ ] Оптимизация для тачскрина


🔒 БЕЗОПАСНОСТЬ

1. OpenCart обновления

TODO:
- [ ] Проверить версию OpenCart
- [ ] Обновить до последней версии
- [ ] Проверить обновления расширений

2. Пароли

TODO:
- [ ] Изменить пароль админа OpenCart
- [ ] Изменить пароль БД
- [ ] Использовать 2FA (если доступно)

3. Файлы

TODO:
- [ ] Удалить /install/ папку
- [ ] Переименовать /admin/ на уникальное имя
- [ ] Проверить права: 644 файлы, 755 папки

4. Бэкапы

TODO:
- [ ] Настроить ежедневные бэкапы БД
- [ ] Настроить еженедельные бэкапы файлов
- [ ] Хранить 7 последних бэкапов


✅ ЧЕКЛИСТ ДЕЙСТВИЙ

Немедленно (день 1):

День 2-3:

Неделя 1:

Постоянно:


📞 КОНТАКТЫ

Сайт: https://pirotehnika.spb.ru (НЕДОСТУПЕН)
Телефон: +7 921 938 9012
Регион: Санкт-Петербург

Хостинг:
- Beget.com
- Account: kondurov (ID: 552070)
- Server: epsilon2.beget.com


Дата отчёта: 2025-11-13
Статус: 🔴 КРИТИЧЕСКИЙ - сайт недоступен
Приоритет: 🚨 НЕМЕДЛЕННОЕ восстановление

Следующий шаг: Получить SSH доступ и провести полную диагностику