Як перенести Magento 2.0.x з одного сервера на інший?


12

У нас є місцеве середовище для розвитку. Для інтеграції нам потрібно зробити міграцію з локального на Dev-сервер. Чи є докладний посібник з міграції про те, як перенести Magento з одного сервера на інший? Як обробляти записи бази даних та створений користувачем вміст?

Відповіді:


14

Короткий довідник:

В основному нам потрібно змінити конфігурацію підключення в app / etc / env.php , конфігурацію url core_config_dataі встановити дозвіл на вихідні файли.

- Після імпорту бази даних резервного копіювання нам потрібно змінити web/unsecure/base_urlі web/secure/base_urlшляхи в core_config_dataтаблиці. Ми можемо перевірити:

SELECT * FROM core_config_data a WHERE a.`path` LIKE '%web/unsecure/base_url%'
UNION 
SELECT * FROM core_config_data a WHERE a.`path` LIKE '%web/secure/base_url%'

введіть тут опис зображення

Змініть ці тези на власну URL-адресу.

--Можливо змінити хост, dbname, ім'я користувача, додаток pwd / тощо / env.php :

  array (
    'table_prefix' => '',
    'connection' => 
    array (
      'default' => 
      array (
        'host' => 'localhost',
        'dbname' => 'mage21',
        'username' => 'root',
        'password' => '',
        'active' => '1',
      ),
    ),
  ),

--Змініть дозвіл та власника файлів:

http://devdocs.magento.com/guides/v2.1/install-gde/prereq/file-sys-perms-over.html

http://devdocs.magento.com/guides/v2.1/config-guide/prod/prod_file-sys-perms.html

--Можно запустити розгортання статичного вмісту php bin/magento setup:static-content:deploy

--Remember очистити кеш Magento і видалити var/generation, var/composer_home, var/view_preprocessed.

Тут є хороший документ: http://devdocs.magento.com/guides/v2.0/config-guide/prod/prod_deploy.html

[EDIT]

Від версії Magento 2.2 є багато вдосконалень: http://devdocs.magento.com/guides/v2.2/config-guide/deployment/


1
Прийміть відповідь, якщо вона допоможе вам @zzpaul, щоб вона допомогла іншим членам спільноти. Щойно помітив, що ви не приймаєте жодної відповіді зі свого профілю
Кейур Шах

2

Перш за все бачать, що база даних експортується на новий сервер.

Потім перенесіть кореневі файли magento на новий сервер.

У кореневій папці перейдіть до нової бази даних. Це можна зробити, перейшовши в app / etc / env.php та змінивши інформацію про масив БД. змінити хост, dbname, ім'я користувача та пароль на нові.

Потім ви змінюєте захищені та незахищені URL-адреси в magento DB core_config_data на новий IP, не забувайте "/" після вашого IP-адреси, це потрібно.

Зробіть веб-користувачем власника нового файлу (для apache це: sudo chown -R www-data / var / www / magentoroot). Встановіть правильні дозволи для файлів і папок.

Нарешті очистіть кеш, запустивши кеш bin / magento: clean and bin / magento cache: flush.


Дякую! Це працює. І я знайшов ще одне хороше посилання: devdocs.magento.com/guides/v2.0/config-guide/prod/…
Павло

0

Подумайте також про те, щоб налаштувати на цільовій платформі будь-які завдання cron, які ви могли створити на вихідній платформі, та встановити будь-які розширення PHP, які, можливо, довелося б встановити, наприклад, для запам’ятовування.

Якщо ви створили рамку тестування, вам потрібно буде відредагувати:

dev / тести / функціональні / тощо / config.xml

dev / тести / функціональні / phpunit.xml

Ваша карта сайту / sitemap.xml також буде неправильною. Я не зовсім впевнений, коли / якщо робота Cron може її оновити. В іншому випадку оновіть вручну в Маркетинг -> SEO та пошук -> Карта сайту

Якщо ви ввімкнули 2FA, вам потрібно буде внести деякі зміни. Я не робив це правильно, тому в кінцевому підсумку відключив модуль 2FA, а потім почав з нуля. Але я вважаю, що може бути достатньо для скидання автентифікатора:

php bin/magento msp:security:tfa:reset <username> <provider>

Дивіться https://docs.magento.com/m2/ee/user_guide/stores/security-two-factor-authentication-manage.html

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.