From 497f2450e99c9a50ad4336a9ea56688399d2e7fa Mon Sep 17 00:00:00 2001 From: Sergei Vasilev Date: Mon, 18 May 2026 12:59:53 +0300 Subject: [PATCH] docs: iqon.com restore documentation Complete documentation of current iqon.com state: server config, WordPress details, backup structure, missing items (MySQL DB), file-by-file change log from PHP 8 fixes, and recovery instructions. Co-Authored-By: Claude Opus 4.7 --- server-backup-20260518/RESTORE.md | 180 ++++++++++++++++++++++++++++++ 1 file changed, 180 insertions(+) create mode 100644 server-backup-20260518/RESTORE.md diff --git a/server-backup-20260518/RESTORE.md b/server-backup-20260518/RESTORE.md new file mode 100644 index 0000000..b5e8535 --- /dev/null +++ b/server-backup-20260518/RESTORE.md @@ -0,0 +1,180 @@ +# iqon.com — Документация текущего состояния и восстановления + +*Created: 18 May 2026* + +## Назначение + +Полная документация текущего состояния iqon.com для обеспечения возможности восстановления после изменений по аудиту. + +--- + +## 1. Сервер и хостинг + +| Параметр | Значение | +|----------|----------| +| **Хостинг** | reg.ru shared (server71.hosting.reg.ru) | +| **Аккаунт** | u0012812 | +| **Путь** | `/var/www/u0012812/data/www/iqon.com/` | +| **PHP** | 8.x (актуальная версия на reg.ru) | +| **HTTPS** | Да (HSTS: max-age=31536000) | +| **Сервер** | nginx | + +### Доступ + +- WP Admin через dsu-project.ru: `https://dsu-project.ru/wp-admin/` (sergei / #8DihNf3NS1TTSQenXz76&Ly) +- iqon.com НЕ имеет собственного WP admin пользователя +- Файлы iqon.com модифицируются через Code Snippets на dsu-project.ru (общий аккаунт) +- SSH недоступен (Password auth not supported) +- WP REST API на iqon.com: 180 маршрутов, открыт без авторизации + +--- + +## 2. WordPress + +| Параметр | Значение | +|----------|----------| +| **Версия** | 4.9.13 (декабрь 2017) — критически устаревшая | +| **Тема** | iqon (кастомная, 2012 год) | +| **Страниц** | 66 в sitemap | +| **Публикаций** | Последнее обновление: 2013-07-25 | +| **Yoast SEO** | Установлен (генерирует sitemap, og теги) | +| **Пользователи** | admin (id=1), iqnadm01 (id=3) — раскрываются через REST API | + +--- + +## 3. Бэкап + +### Дата создания: 2026-05-18 + +### Структура бэкапа + +``` +server-backup-20260518/ +├── manifest.txt # Полный список файлов темы (58 файлов, 976KB) +├── wp-options.txt # WP options (blogname, siteurl, etc.) +├── index.html # Главная страница (отрендеренный HTML) +├── .htaccess # Apache config +├── sitemap_index.xml # XML sitemap index +├── page-sitemap.xml # Sitemap страниц (66 URL) +├── post-sitemap.xml # Sitemap записей +├── php-source/ # Исходные PHP файлы темы (RAW) +│ ├── .htaccess +│ ├── analyticstracking.php # Пустой файл (GA-UA удалён) +│ ├── category.php # С исправлением error_reporting +│ ├── contactkz.php # Контакт-форма с PHP 8 фиксами +│ ├── footer.php # Подвал (2016 copyright) +│ ├── functions.php # Функции темы (15.5KB) +│ ├── header.php # Шапка (jQuery 3.7.1) +│ ├── home.php # Шаблон главной +│ ├── meniu.php # Навигация +│ ├── meniu-services.php # Подменю сервисов +│ ├── page.php # Шаблон страницы +│ ├── single.php # Шаблон записи +│ ├── style.css # Метаданные темы (116 байт) +│ └── wp-config.php # Конфиг WP (DB_NAME=u0012812_iqon, пароли MASKED) +├── wp-content/ +│ ├── themes/iqon/ +│ │ ├── css/ +│ │ │ ├── style.css # Основной CSS (7.3KB) +│ │ │ └── fonts/ +│ │ │ ├── fonts.css # @font-face для HelveticaNeueLTPro +│ │ │ ├── iqon_35_thin-webfont.eot/woff/ttf +│ │ │ └── iqon_45_light-webfont.eot/woff/ttf +│ │ ├── images/ # 18 PNG изображений (логотип, иконки, кнопки) +│ │ └── js/ +│ │ └── jquery.realperson.min.js # CAPTCHA плагин +│ └── uploads/ +│ ├── 2012/05/ # homepage.png, imagine-text-home.png +│ └── 2012/06/ # Poza_website_CaseStudy-208x142.jpg +└── style.css # Альтернативный светлый CSS (new_redesign) +``` + +### Чего нет в бэкапе + +| Элемент | Причина | Влияние | +|---------|---------|---------| +| **База данных MySQL** | Нет прямого доступа (только через WP REST API) | Критично — хранит контент всех 66 страниц | +| **Все uploads** | Скачано 3 ключевых файла из ~101 (86MB total) | Среднее — остальное можно восстановить из оригиналов | +| **.bak файлы на сервере** | 7 backup-файлов (.bak, .bak2) в теме | Низкое — это предыдущие версии | +| **WP plugins** | Нет доступа к списку плагинов | Среднее — Yoast SEO, Code Snippets | +| **class.phpmailer.php** | 81KB, не скачан (библиотека) | Низкое — стандартный PHPMailer | + +--- + +## 4. Критические файлы на сервере (не в бэкапе) + +По данным manifest.txt: + +| Файл | Размер | Описание | +|------|--------|----------| +| `class.phpmailer.php` | 81KB | PHPMailer библиотека (стандартная) | +| `it_IT.mo` | 164KB | Итальянская локализация | +| `ru_RU.mo` | 207KB | Русская локализация | +| `screenshot.png` | 168KB | Скриншот темы для WP admin | +| `paginare-template.php` | 998B | Шаблон пагинации | +| `paginare-script.php` | 1.5KB | Скрипт пагинации (исправлен для PHP 8) | +| `search.php` | 2.3KB | Шаблон поиска | +| `editor-style.css` | 0B | Пустой файл | +| `google0ebaafd23cef1b29.html` | 53B | Google Search Console верификация | +| `.bak файлы` | 7 шт | Бэкапы PHP файлов до исправлений | + +--- + +## 5. Инструкции по восстановлению + +### Частичное восстановление (отдельные файлы) + +Через Code Snippets на dsu-project.ru: + +```php +// Пример: восстановить header.php из бэкапа +$backup_content = file_get_contents('/path/to/server-backup-20260518/php-source/header.php'); +file_put_contents('/var/www/u0012812/data/www/iqon.com/wp-content/themes/iqon/header.php', $backup_content); +``` + +### Полное восстановление темы + +1. Загрузить все файлы из `php-source/` на сервер через Code Snippets +2. Загрузить все assets из `wp-content/themes/iqon/` аналогично +3. Восстановить uploads из `wp-content/uploads/` + +### Восстановление базы данных + +БД не в бэкапе. Для полного восстановления нужен: +- Доступ к phpMyAdmin на reg.ru, ИЛИ +- WP плагин резервного копирования (UpdraftPlus), ИЛИ +- mysqldump через SSH (недоступен) + +--- + +## 6. Изменённые файлы (исправления 2026-05-16) + +Следующие файлы были изменены через Code Snippets на dsu-project.ru (сниппет #5 iqon-fix-critical): + +| Файл | Изменение | .bak на сервере | +|------|-----------|------------------| +| `contactkz.php` L28 | `$binary{0}` → `$binary[0]` (PHP 8) | Да | +| `contactkz.php` L99 | `$_GET['sent']` → `$_GET['sent'] ?? ''` | Да | +| `paginare-script.php` | `$_GET["page"]` → `$_GET["page"] ?? 1` | Нет | +| `category.php` | `error_reporting(E_ERROR \| E_PARSE)` добавлен | Да | +| `functions.php` L18-21 | jQuery 1.7.2/1.8.18 → 3.7.1/1.13.2 | Да | +| `analyticstracking.php` | GA-UA скрипт удалён (пустой файл) | Да | + +Все .bak файлы содержат оригинальные версии до исправлений. + +--- + +## 7. Активные Code Snippets (dsu-project.ru) + +| # | Название | Статус | Назначение | +|---|----------|--------|------------| +| 9 | dsu-high-priority-fixes | Active | SEO/доступность dsu-project.ru | +| 10 | dsu-phase2-security-accessibility | Active | Безопасность dsu-project.ru | +| 11 | set-noindex-old-bitrix | Inactive | Одноразовый noindex для dsu-project.ru | +| 5 | iqon-fix-critical | Inactive | PHP 8 фиксы для iqon.com | + +Сниппет #5 (iqon-fix-critical) деактивирован — все фиксы уже применены напрямую к файлам на сервере. + +--- + +*Updated: 18 May 2026* \ No newline at end of file