497f2450e9
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 <noreply@anthropic.com>
180 lines
9.0 KiB
Markdown
180 lines
9.0 KiB
Markdown
# 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* |