Общий принцип копирования сайта на новый домен
1) Добавляем новый домен в "Доменные имена" и "Www-домены" панели управления. Инструкция -> тут;
2) Скачиваем файлы сайта по FTP на компьютер. Инструкция по работе с FTP -> тут;
3) Проверяем файлы на наличие старого домена в скриптах с помощью Notepad++:
- в главном меню редактора выбираем: Поиск -> Найти -> вкладка "Найти в файлах"
- указываем старый домен и новый для замены, папку с файлами сайта, ставим галочу поиска "Во всех подпапках" и нажимаем "Заменить в Файлах";
4) Заливаем отредактированные файлы обратно на сервер в корневой каталог нового домена: /www/новый_домен ;
5) Скачиваем на компьютер файл базы данных .sql с помощью PhpMyAdmin. Инструкция по экспорту базы -> тут ;
6) Затем в дампе базы через Notepad++ выполняется поиск и замена имени домена:
- в главном меню редактора выбираем: Поиск -> Найти -> вкладка "Замена"
- заменяем все и сохраняем изменения;
7) Выполняем импорт дампа в новую базу. Инструкция по созданию новой базы и импорту -> тут ;
8) Меняем данные о новой базе в файле конфигурации в корневом каталоге нового домена;
9) Проверяем работу сайта на новом домене.
Способ 1
Панель управления - Резервные копии
Дважды кликаем по нужному бэкапу - Открываем "Файлы" - выбираем папку с сайтом - жмем "Восстановить"
Проверяем работу сайта.
Если сайт работает некорректно, то дополнительно восстанавливаем базу
Дважды кликаем по нужному бэкапу - Открываем "Базы данных MySQL"- выбираем базу - жмем "Восстановить"
Проверяем работу сайта.
Способ 2
1) Переименовываем папку с сайтом: Панель управления - Менеджер файлов - кнопка «Атрибуты»
2) Экспортируем базу и удаляем все таблицы через Phpmyadmin (Панель управления — PhpMyAdmin или http://имя-сайта/myadmin/ )
3) Делаем восстановление из бэкапа как описано в Cпособе 1
Проверяем работу сайта.
В данном разделе приводятся способы устранения наиболее часто встречающихся ошибок.
1. Проверьте DNS, уберите лишние записи, оставьте только:
ns1.cishost.ru
ns2.cishost.ru
Инструкция для доменов, зарегистрированных в CISHost -> тут.
2. Настройте кеширование и сжатие -> пример.
3. Проверьте скрипты через консоль браузера (Ctrl+Shift+I, вкладка Network), не идут ли запросы со сторонних ресурсов, что существенно влияет на скорость загрузки.
На серверах периодически производится ремонт дисковых квот.
Если после этой процедуры Вы увидели уведомление в панели: "Превышение дискового пространства на 126532.000 Мб. Доступ на запись в Ваши базы данных запрещен.", то выполняем очистку дискового пространства согласно -> инструкции
По завершении очистки диска разблокировка баз данных на запись произойдет в течение нескольких минут автоматически.
Логи доступа (access.log) и логи ошибок (error.log) - инструменты панели для анализа посещаемости и отладки сайтов
Документация ISPmanager по настройке сбора статистики запросов к сайтам -> тут
Панель управления - Журнал - дважды кликаем по нужному журналу, либо кликаем по стоке с журналом и нажимаем кнопку "Просмотр"
Для просмотра более старых записей, помещенных в архив согласно настроенным параметрам архивации, кликаем по строке с логом и нажимаем кнопку "Архив"
О том, как читать записи журнала access.log -> инструкция
Если запись логов не ведется и Журнал пустой, то его можно включить несколькими способами
- для каждого домена в отдельности:
Панель управления - www-домены - кликаете по домену - вкладка "Журналы"

- для всех доменов:
Панель управления - www-домены - кнопка "Все логи"
или
Панель управления - Ротация логов
Выбираем тип Журнала -> Включить (с ротацией).
Указываем желаемые параметры ротации. Ротация - это архивирование с дальнейшей перезаписью.
Указываем количество архивов, которые будут храниться на сервере
! Обращаем Ваше внимание, что логи занимают дисковое пространство Вашего аккаунта
В связи с особенностью работы панели управления удаление фалов журнала из папки /logs по FTP является неправильным способом очистки Журнала и не повлияет на дисковую квоту в аккаунте.
Для правильной очистки логов перейдите в раздел "Журнал", по кнопке "Очистить" производите очистку записей, по кнопке "Архив" открываете раздел с архивированными записями и выполняете очистку каждой из них. Инструкция -> тут
Данная ошибка может возникнуть при добавлении домена
Решение: удалите файл /etc/38274472.passwd
После этого попробуйте снова добавить домен
Для получения информации об ошибках по www-домену от web-сервера воспользуйтесь "Журналом" панели управления. Подробнее -> тут
Для вывода ошибок и предупреждений с помощью скриптов сайта добавьте код:
- в файле php.ini
error_reporting = E_ALL
display_errors = On
display_startup_errors = On
- в файле .htaccess
php_value display_errors 1
php_value display_startup_errors 1
php_value error_reporting E_ALL
php_flag html_errors on
php_flag log_errors on
php_flag ignore_repeated_errors off
php_flag ignore_repeated_source off
php_flag report_memleaks on
php_flag track_errors on
php_value docref_root 0
php_value docref_ext 0
php_value log_errors_max_len 0
- в коде PHP-скриптов:
ini_set('error_reporting', E_ALL);
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
- в DLE - в index.php добавить в начало файла:
@error_reporting ( E_ALL ^ E_WARNING ^ E_NOTICE );
@ini_set ( 'display_errors', true );
@ini_set ( 'html_errors', true );
@ini_set ( 'error_reporting', E_ALL^ E_WARNING ^ E_NOTICE );
- в Joomla - в configuration.php:
<?php
class JConfig {
public $debug = '1';
public $error_reporting = 'E_ALL';
....}
// Выключение протоколирования ошибок
error_reporting(0);
// Включать в отчет простые описания ошибок
error_reporting(E_ERROR | E_WARNING | E_PARSE);
// Включать в отчет E_NOTICE сообщения (добавятся сообщения о
//непроинициализированных переменных или ошибках в именах переменных)
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
// Добавлять сообщения обо всех ошибках, кроме E_NOTICE
error_reporting(E_ALL & ~E_NOTICE);
// Добавлять в отчет все PHP ошибки (см. список изменений)
error_reporting(E_ALL);
// Добавлять в отчет все PHP ошибки
error_reporting(-1);
// То же, что и error_reporting(E_ALL);
ini_set('error_reporting', E_ALL);
Пример результата указания $error_reporting = E_ALL в Joomla
Код состояния http - трехзначное число, описывающее ответ сервера при запросе по протоколу http:
1** - информация;
2** - успешно (200 - успешно);
3** - перенаправление (301 - перемещено навсегда - установлен редирект);
4** - ошибка клиента (401, 403 - запрещен доступ);
5** - ошибка сервера (503, 504 - превышение лимитов).
Различные коды ошибок и примеры их решения разбираются в данном разделе
Причины возникновения
1. Скриптовая ошибка в .htaccess.
Решение: проверяем панель управления - Журнал - error.log, устраняем синтаксические ошибки,указанные в Журнале.
2. Не была выбрана версия php.
1) В параметрах www-домена был включен режим CGI, но не была выбрана версия php;
2) Производилось отключение/включение услуги или редактирование ресурсов в конфигурации услуги в биллинге, после чего не была выбрана версия php;
3) Было выполнено редактирование параметров www-домена, после чего не была выбрана версия php.
Решение:
Для устранения ошибки достаточно заново выбрать версию php согласно шагу 2 -> инструкции
Если в файле .htaccess задано правило, ограничивающее доступ к каталогу, например:
AuthType Basic
AuthName "Restricted Access"
AuthUserFile /etc/.htpasswd
Require valid-user
<Files .htpasswd>
deny from all
</Files>
ErrorDocument 401 "401 Authorisation Required"
, то при указании в браузере некорректных данных доступа к каталогу в консоли увидим ошибку:
Failed to load resource: the server responded with a status of 401 ()
Код ответа на статус ошибки HTTP 401 Unauthorized клиента указывает, что запрос не был применён, поскольку ему не хватает действительных учётных данных для целевого ресурса. Этот статус похож на 403, но в этом случае возможна повторная аутентификация.
Ошибка 503 (Service Temprorarily Unavailable) - превышено число одновременных подключений с ip, превышен лимит по допустимому значению числа рабочих процессов "воркеров" apache.
Cайт создаёт повышенную нагрузку на сервер, потребляя слишком много ресурсов одновременно, либо скрипты некорректно завершают работу.
Решение: пишем в поддержку для уточнения деталей, повышения лимитов и проверки значения нагрузки на сервере от соседних клиентов.
Ошибка 403 - блокировка доступа к ресурсам по причине:
1) некорректных прав, установленных на файлы и папки;
2) работа плагинов защиты в CMS;
3) правила блокировки в .htaccess .
Решение: для проверки отключить плагины защиты, закомментировать правила в .htaccess (символ # перед строкой), сменить права: Панель управления - Менеджер файлов - кликаете по папке - кнопка "Атрибуты" устанавливаете права рекурсивно 755 на папки и 644 на файлы.
Подробнее о значении прав -> тут.
Ошибка 404 (Not found) возникает, когда сервер не может найти запрашиваемую пользователем страницу.
Решение: Для создания своей 404 страницы на сайте достаточно создать html файл с дизайном страницы и добавить в .htaccess код:
ErrorDocument 404 https://site.ru/404.html
Кэш - это совокупность временных или часто используемые копий файлов, а также специально отведенное место (высокоскоростное буферное хранилище) в память программы или устройства для быстрого, оперативного доступа к этим данным.
Кэш — это память программы или устройства, в которой сохраняются временные или часто используемые файлы для быстрого доступа к ним.
Если при заходте на сайт внесенные изменения никак не отображаются, то это означает, что данные закешировались.
Ниже рассмотрены разные виды кеша и способы их устранения
Кэш Браузера
На примере Chrome, Yandex.Браузера
CTRL+SHift+Del - Очистить изображения и другие файлы в кеше
или
CTRL+F5 - нажать и удерживать пару секунд пока не обновится страница с сайтом
или
перейти на сайт в режиме "Инкогнито"
или
зайти на сайт с другого браузера
Кеш Мобильной версии браузера: Настройки -> Приложения -> Выбираем браузер -> Память -> Очистить кеш
Кроме кеша можно очистить историю и куки -> https://vk.com/@-29173255-kak-pochistit-kesh-kuki-nastroiki-saitov-istoriu-v-mobilnoi
Кэш CMS
На примере админки Joomla:
Система -> Очистка кэша -> очистить кеш или очистить устаревший кеш
Способы очистки кэша в разных CMS описаны -> тут
Кэш БД
В phpmyadmin выполнить:
FLUSH QUERY CACHE; - производится дефрагментация кэша запросов, чтобы эффективнее использовать его память. Эта команда не удаляет запросы из кэша, как команда RESET QUERY CACHE.
RESET QUERY CACHE; - удаляет запросы из кэша - не желательно, так как кеш наоборот создан ускорить запросы.
Кэш Cloudflare
В панели Cloudflare: Caching -> Configuration -> «Purge Everything»
Кэш DNS
В коммандной строке выполнить:
ipconfig /displaydns - печатает содержимое локального кеша DNS
ipconfig /flushdns - cтирает содержимое локального кеша DNS
Можно попробовать принудительно добавить ip сайта в hosts, затем незабыть убрать согласно -> инструкции
Кэш роутера
Дождитесь самостоятельного сброса кеша, а пока зайдите с мобильного устройства (не по wi-fi), либо выполнить в коммандной строке:
ipconfig /release - прекращает любые активные соединения TCP/IP во всех сетевых адаптерах и освобождает эти IP-адреса для использования другими приложениями;
ipconfig /renew -повторно устанавливает соединения TCP/IP во всех сетевых адаптерах;
Перезагрузить роутер.
Кэш на уровне провайдеров
Дождаться очистки.
#Сжатие
<ifModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/css text/javascript application/javascript application/x-javascript
</ifModule>
#Кэширование
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access 7 days"
ExpiresByType application/javascript "access plus 1 year"
ExpiresByType text/javascript "access plus 1 year"
ExpiresByType text/css "access plus 1 year"
ExpiresByType text/html "access plus 7 day"
ExpiresByType text/x-javascript "access 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType image/jpg "access plus 1 year"
ExpiresByType image/x-icon "access 1 year"
ExpiresByType application/x-shockwave-flash "access 1 year"
</IfModule>
# Cache-Control
<ifModule mod_headers.c>
# 30 дней
<filesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|swf)$">
Header set Cache-Control "max-age=2592000, public"
</filesMatch>
# 30 дней
<filesMatch "\.(css|js)$">
Header set Cache-Control "max-age=2592000, public"
</filesMatch>
# 1 день
<filesMatch "\.(html|htm|php)$">
Header set Cache-Control "max-age=172800, private, must-revalidate"
</filesMatch>
</ifModule>
Сжимать можно файлы любого типа.
Например, для сжатия HTML-файлов в .htaccess добавьте код:
AddOutputFilterByType DEFLATE text/html
Для сжатия текстовых файлов используйте:
AddOutputFilterByType DEFLATE text/plain
Вы также можете сжать JavaScript или включить сжатие для других различных типов файлов командами:
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/rss+xml
Кроме того, вы можете сжать все ваши JavaScript, HTML и CSS файлы при помощи GZIP. В современных версиях Apache gzip включается через mod_deflate . Для этого используйте следующий код:
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
Кроме того, можно сочетать типы файлов, указывая их одной строкой:
<ifModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/css text/javascript application/javascript application/x-javascript
</ifModule>
Указанные в правилах расширения обрабатываются по умолчанию web-сервером Nginx.
Правила, прописанные в .htaccess используются для web-сервера Apache, соответственно, не работают, пока не будут убраны расширения из nginx.
Если Ваш сайт размещен на виртуальном хостинге, то для отключения статики от nginx напишите запрос в Центр поддержки с указанием userID и именем домена.
CISHost - просто хороший хостинг!