Как перенести сайт на OpenCart на другой хостинг

Перенос сайта на OpenCart требует определённых знаний веб-администрирования. Сайт, написанный на OpenCart, состоит из файлов в формате PHP и базы данных (БД) в формате SQL. Для переноса нужно скопировать все необходимые данные на старом хостинге, загрузить файлы сайта и импортировать базу данных на новый хостинг.

Как перенести сайт OpenCart на хостинг 2DOMAINS

Этап 1. Действия на текущем хостинге

1. Сначала нужно определить, в какой папке находятся файлы вашего сайта. Это можно сделать в панели управления ISPmanager. Перейдите в раздел Сайты. Рядом с вашим доменом будет указана корневая директория:

Путь к корневой директории сайта в ISPmanager 6

Файлы сайта на OpenCart выглядят примерно так:

Файлы OpenCart

2. Если ваш сайт размещен на хостинге, заархивируйте папку с файлами, скачайте архив на компьютер, а также создайте резервную копию БД. По вопросам создания резервной копии или архива можно обратиться в поддержку текущего хостинг-провайдера.

3. Затем узнайте, какую базу данных (БД) использует ваш сайт. Для этого перейдите в корневой каталог сайта и в файле config.php найдите строки:

define('DB_HOSTNAME', 'localhost');
define('DB_USERNAME', 'u1234567_dbuser');
define('DB_PASSWORD', 'password');
define('DB_DATABASE', 'u1234567_database');


Где:

  • u1234567_database — база данных, которую использует сайт,
  • u1234567_dbuser — пользователь, от имени которого сайт подключается к базе данных,
  • password — пароль для подключения к базе данных.

4. Перейдите в phpMyAdmin. Для входа вам понадобится имя и пароль пользователя базы данных. 
5. Кликните по названию нужной БД:

6. Перейдите во вкладку Экспорт. В раскрывающемся списке выберите формат SQL и кликните Вперёд:

Этап 2. Действия на новом хостинге

1. Войдите в панель управления нового хостинга ISPmanager.
2. Если вы уже добавили доменное имя в панель управления, переходите на шаг 4. Если домен ещё не добавлен, откройте раздел Сайты и нажмите Создать сайт

Создать сайт в ISPmanager 6
3. Заполните поля «Имя» и «E-Mail администратора». Проверьте остальные настройки и внизу страницы кликните Ок.
4. Загрузите архив в корневую директорию по инструкции.

Этап 3. Импорт базы данных

1. Перейдите в ISPmanager в раздел Базы данных и нажмите Создать базу данных:

Создать базу данных в ISPmanager 6

2. На открывшейся странице заполните поля: 

  • Имя ― любое имя без префикса (префикс вашего логина хостинга вида u1234567 добавится автоматически),  
  • Имя пользователя ― скопируйте пароль, который вы нашли в конфигурационном файле сайта (этап 1 пункт 3), или сгенерируйте новый. 

Нажмите Ok:

Параметры новой базы данных в ISPmanager 6

3. Войдите в phpMyAdmin на новом хостинге. Перейдите в базу данных, в которую хотите импортировать резервную копию БД:

4. Перейдите во вкладку Импорт. Нажмите Выберите файл и загрузите файл с компьютера. Нажмите ОК:

5. В конфигурационных файлах сайта config.php и admin/config.php измените название БД, пользователя и пароль, на тот, который вы указали в этапе 3 пункте 2. 
6. Также в конфигурационных файлах config.php и admin/config.php поменяйте полный путь до корневой папки во всех строках, где он указан, на актуальный. Например, для услуг хостинга с панелью управления ISPmanager данный путь выглядит /var/www/user/data/www/site_name/, где:

  • user — имя пользователя, для услуг хостинга имеет вид u1234567,
  • site_name — имя сайта.

7. Если у вас настроен VQMod кэш, удалите файл vqmod/mods.cache.
8. Чтобы проверить работоспособность сайта до обновления DNS-серверов, впишите домен и IP-адрес сайта в файл hosts. Прежде чем открыть сайт в браузере, не забудьте очистить кэш.

Готово, сайт на OpenCart перенесён на новый хостинг.

Ошибки после переноса OpenCart на другой хостинг

 
Warning: mysqli::mysqli(): (HY000/1045): Access denied for user 'u0597957_user'@'localhost' (ошибка установки соединения с базой данных)

Это значит, что вы неверно указали данные для подключения к базе данных в файле config.php и admin/config.php.

Проверьте атрибуты доступов к базе данных. В файлах config.php и admin/config.php. Для этого найдите строки:

define('DB_HOSTNAME', 'localhost');
define('DB_USERNAME', 'u1234567_dbuser');
define('DB_PASSWORD', 'password');
define('DB_DATABASE', 'u1234567_database');

Где:

  • u1234567_database — название базы данных, которую использует сайт,
  • u1234567_dbuser — пользователь, от имени которого сайт подключается к базе данных,
  • password — пароль для подключения к базе данных.

Обратите внимание! В параметре DB_HOSTNAME должно быть указано localhost или 127.0.0.1

Если все данные верны, проверьте, нет ли лишних символов или пробелов.

 
Ошибка 403. Forbidden. You don't have permission to access / on this server (в доступе на страницу отказано)

Это значит,что корневая папка сайта отсутствует, в ней нет файлов или назначены некорректные права доступа к ней.

Для решения проблемы проверьте наличие файлов сайта, а также корректность прав на папки и файлы сайта. В большинстве случаев права выглядят так:

  • на файлы сайта: «644» или «rw-r-r»,
  • на папки: «755» или «rwxr-xr-x».

Если права на файлы и папки отличаются от указанных, измените их по инструкции.

Также, возможно, заданы  некорректные правила в файле .htaccess. Проверьте корректность файла или загрузите стандартный файл .htaccess для CMS OpenCart. Он выглядит так:

Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA]

 

 
Ошибка 404 на внутренних страницах сайта, но главная страница открывается без ошибок

Это значит, что отсутствует файл .htaccess. Чтобы решить эту проблему, загрузите файл .htaccess с исходной услуги в корневую папку сайта на новой услуге или вставьте стандартный файл .htaccess для CMS OpenCart:

Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA]

 

 
При входе в административную панель ошибка: «Такой логин и/или пароль не существует!», но данные введены верно

Эта ошибка говорит о том, что были введены некорректные данные для подключения к базе данных в конфигурационном файле admin/config.php.
Проверьте атрибуты доступов к базе данных. Для этого перейдите в файл admin/config.php и найдите строки:

define('DB_HOSTNAME', 'localhost');
define('DB_USERNAME', 'u1234567_dbuser');
define('DB_PASSWORD', 'password');
define('DB_DATABASE', 'u1234567_database');

Где:

  • u1234567_database — база данных, которую использует сайт,
  • u1234567_dbuser — пользователь, от имени которого сайт подключается к базе данных,
  • password — пароль для подключения к базе данных.

В параметре DB_HOSTNAME должно быть указано localhost или 127.0.0.1.
Если все данные верны, проверьте, нет ли лишних символов или пробелов.
 
Самостоятельный перенос OpenCart на хостинг может показаться сложным и долгим. Если у вас возникли проблемы или вопросы при переносе, обратитесь в службу поддержки.

Если вы не нашли ответ, спросите у нас!
Написать в поддержку