Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия Следующая версия Следующая версия справа и слева | ||
wiki:drupal8 [2018/07/07 14:07] [TODO; что необходимо сделать] |
wiki:drupal8 [2019/12/14 23:24] [Резервное копирование] |
||
---|---|---|---|
Строка 13: | Строка 13: | ||
DocumentRoot /var/www/drupal8/web | DocumentRoot /var/www/drupal8/web | ||
<Directory /var/www/drupal8/web/> | <Directory /var/www/drupal8/web/> | ||
- | Options FollowSymlinks | + | Options +FollowSymlinks -MultiViews |
AllowOverride All | AllowOverride All | ||
</Directory> | </Directory> | ||
Строка 41: | Строка 41: | ||
===== Создание БД ===== | ===== Создание БД ===== | ||
mysql будет спрашивать root пароль который вы устанавливали при установке mysql. | mysql будет спрашивать root пароль который вы устанавливали при установке mysql. | ||
- | <code>mysql -u root -p -e "CREATE DATABASE drupal8db CHARACTER SET utf8 COLLATE utf8_general_ci; | + | <code>mysql -u root -p -e "CREATE DATABASE drupal8db CHARACTER SET utf8 COLLATE utf8_bin;" |
- | CREATE USER drupal8db@localhost IDENTIFIED BY 'password'; | + | mysql -u root -p -e "CREATE USER drupal8db@localhost IDENTIFIED BY 'password';" |
- | GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES ON drupal8db.* TO 'drupal8db'@'localhost' IDENTIFIED BY 'password';"</code> | + | mysql -u root -p -e "GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES ON drupal8db.* TO 'drupal8db'@'localhost' IDENTIFIED BY 'password';" |
+ | mysql -u root -p -e "FLUSH privileges;" | ||
+ | </code> | ||
===== Инсталляция сайта ===== | ===== Инсталляция сайта ===== | ||
<code>cd /var/www | <code>cd /var/www | ||
Строка 54: | Строка 56: | ||
cd drupal8/web | cd drupal8/web | ||
../vendor/bin/drush site-install --db-url=mysql://drupal8db:password@localhost/drupal8db --site-name="Drupal 8 сайт"</code>сохраняем логин и пароль, добавляем пару модулей<code>cd .. | ../vendor/bin/drush site-install --db-url=mysql://drupal8db:password@localhost/drupal8db --site-name="Drupal 8 сайт"</code>сохраняем логин и пароль, добавляем пару модулей<code>cd .. | ||
- | composer require drupal/metatag --prefer-dist | + | composer require drupal/captcha --prefer-dist |
- | composer require drupal/bootstrap --prefer-dist</code> | + | composer require drupal/recaptcha --prefer-dist |
+ | composer require drupal/metatag --prefer-dist</code> | ||
===== Завершающие настройки ===== | ===== Завершающие настройки ===== | ||
Строка 69: | Строка 72: | ||
Заходим на сайт http://192.168.1.39 . Входим по логину и паролю который выдали при инсталляции сайта. | Заходим на сайт http://192.168.1.39 . Входим по логину и паролю который выдали при инсталляции сайта. | ||
===== Обслуживание===== | ===== Обслуживание===== | ||
+ | прописываем drush для удобства в переменную path | ||
+ | <code> ../vendor/drush/drush/drush init --add-path=/var/www/drupal8/vendor/bin</code> | ||
==== Резервное копирование ==== | ==== Резервное копирование ==== | ||
+ | у меня получился такой скрипт backup.sh: | ||
- | <code>cd /var/www/drupal8/web | + | <code>backupdir="/home/yuraxu1804/backup/$(date)" |
+ | mkdir "$backupdir" | ||
+ | cd /var/www/drupal8/web | ||
../vendor/bin/drush sset system.maintenance_mode 1 | ../vendor/bin/drush sset system.maintenance_mode 1 | ||
- | ../vendor/bin/drush sql-dump --result-file=../baza_drup8.sql</code>скачать все файлы с помощью виндоуз программы filezilla из дирректории /var/www/drupal8<code>cd .. && composer update | + | |
- | cd web | + | if ../vendor/bin/drush sql-dump --gzip --result-file="$backupdir"/baza_drup8.sql |
+ | then echo "Backup of sql successful" | ||
+ | else echo "Backup of sql failed" | ||
+ | fi | ||
+ | |||
+ | if tar cfz "$backupdir"/archive.tar.gz -C /var/www drupal8 | ||
+ | then echo "Backup of files successful" | ||
+ | else echo "Backup of files failed" | ||
+ | fi | ||
+ | |||
+ | cd /var/www/drupal8/web | ||
../vendor/bin/drush sset system.maintenance_mode 0</code> | ../vendor/bin/drush sset system.maintenance_mode 0</code> | ||
+ | потом запускаем crontab -e и прописываем <code>0 5 * * 1 backup.sh</code> | ||
+ | backup.sh будет запускаться каждую неделю в 5 утра | ||
+ | |||
+ | |||
==== Восстановление ==== | ==== Восстановление ==== | ||
+ | <code>drush -r $(pwd) sset system.maintenance_mode 1 | ||
+ | tar -xzf archive.tar.gz -C /var/www | ||
+ | gunzip -d baza_drup8.sql.gz | ||
+ | mysql -u root -p drupal8db < ./baza_drup8.sql | ||
+ | drush -r $(pwd) sset system.maintenance_mode 0</code> | ||
+ | ==== Обновление ==== | ||
+ | <code>cd /var/www/drupal8/web | ||
+ | drush -r $(pwd) sset system.maintenance_mode 1 | ||
+ | cd .. | ||
+ | composer update drupal/core --with-dependencies | ||
+ | cd web | ||
+ | drush -r $(pwd) updb | ||
+ | drush -r $(pwd) cr | ||
+ | drush -r $(pwd) sset system.maintenance_mode 0 | ||
+ | </code> | ||
+ | |||
==== TODO; что необходимо сделать ==== | ==== TODO; что необходимо сделать ==== | ||
- | * отправку почты с сайта (postfix) | + | * отправку почты с сайта ([[wiki:postfix|postfix]]) |
* шифрование tls ([[wiki:letsencrypt|letsencrypt]]) | * шифрование tls ([[wiki:letsencrypt|letsencrypt]]) | ||
* использование для администрирования БД Heidisql и Mysql workbench | * использование для администрирования БД Heidisql и Mysql workbench |