Categories: Шпаргалки

Как обновить phplist

Разберем процедуру обновления phplist (менеджера рассылки писем) на операционной системе Linux.

Резервная копия

Это самый важный шаг при обновлении phplist. Во-первых, после удачной установки новой версии, поверх существующей, необходимо будет вернуть конфигурационный файл с настройками. Во-вторых, если что-то пойдет не так, у нас должна быть копия, чтобы вернуть старый рабочий phplist.

Создадим каталог — в него скопируем копию текущей версии phplist:

mkdir /backup

Делаем резервную копию базы данных.

mysqldump -v -uroot -p phplist | gzip > /backup/phplist.sql.gz

* система запросит пароль — вводим данные для учетной записи root mysql.
** данной командой мы создадим резервную копию базы данных phplist от пользователя root и сохраним ее в файл phplist.sql.gz каталога /backup .

Если в вашей системе база данных называется иначе, необходимо сделать резервное копирование для нее. А если имя неизвестно, то можно выполнить команду:

mysqldump -v -uroot -p —all-databases | gzip > /backup/all_databases.sql.gz

… для резервного копирования всех баз на сервере.

После копируем содержимое каталога с phplist:

cp -R /var/www/phplist /backup/

* в данном примере подразумевается, что наш портал phplist находится по пути /var/www/phplist .

Загрузка и установка новой версии

Переходим к обновлению. Процесс нужно выполнить в несколько этапов.

1. Загрузка phplist

Переходим на страницу загрузки phplist . Копируем ссылку на последнюю версию программы:

С помощью скопированной ссылки скачиваем на сервер архив:

wget -O phplist.tgz https://sourceforge.net/projects/phplist/files/phplist/3.6.6/phplist-3.6.6.tgz/download

* в данном примере вы загрузим phplist версии 3.6.6 .

2. Замена старой версии новой

Скачанный архив распакуем командой:

tar -xvzf phplist.tgz

Перейдем в распакованный каталог:

cd phplist-*

Удалим содержимое каталога старой версии:

rm -rf /var/www/phplist/* /var/www/phplist/.htaccess

* в моем случае, это /var/www/phplist , поэтому команда будет такой.

Перенесем файлы phplist в каталог, где сейчас находится старая его версия:

mv public_html/lists/* public_html/lists/.htaccess /var/www/phplist

* мы переносим все содержимое каталога public_html/lists в /var/www/phplist .

Возвращаем из резервной копии конфигурационный файл:

cp /backup/phplist/config/* /var/www/phplist/config/

Вернем загруженные файлы изображений:

cp -R /backup/phplist/images/* /var/www/phplist/images/

Задаем владельца на файлы:

chown -R nginx:nginx /var/www/phplist

3. Обновляем базу данных

Заходим на наш портал phplist под администратором — мы увидим ошибку, что база данных устарела:

Кликаем по ссылке Обновление — на следующей странице нажимаем по кнопке Обновление .

Ждем окончания процесса. Мы должны увидеть сообщение «Успешно».

Обновление завершено.

Откат

Если обновление вызвало проблемы, восстанавливаем предыдущую версию из резервной копии.

1. Восстановление базы

Подключаемся к sql-оболочке:

> mysql -uroot -p

Удаляем базу:

> DROP DATABASE phplist;

* в данном примере имя базы phplist . Если у вас другое имя, необходимо прописать соответствующее. Список баз можно посмотреть командой show databases;

Создаем по новой базу данных:

> CREATE DATABASE phplist CHARACTER SET utf8 COLLATE utf8_general_ci;

* будет создана база phplist в кодировке utf8.

Выходим из sql:

> q

Распаковываем архив с дампом базы:

gunzip /backup/phplist.sql.gz

Восстанавливаем базу:

mysql -uroot -p phplist < /backup/phplist.sql

2. Восстановление портала

Удаляем каталог с порталом:

rm -r /var/www/phplist

* предполагается, что портал находится по пути /var/www/phplist .

Копируем портал из резервной копии по старому пути:

cp -r /backup/phplist /var/www/phplist

Задаем владельца для каталога с порталом:

chown -R nginx:nginx /var/www/phplist

* в нашем примере пользователем, от которого работает веб-сервер, является nginx .

admin

Recent Posts

Что такое Zulip

Zulip — программное обеспечение для реализации корпоративного чата. Разработан в 2012 году, в 2014 был…

2 месяца ago

Что такое Zookeeper

Zookeeper — cервис-координатор, который позволяет обеспечить контроль синхронизации данных. Разработан на Java компанией Apache Software…

2 месяца ago

Что такое Zimbra

Zimbra — программное обеспечение для реализации почтового сервиса или, если сказать точнее, автоматизации совместной деятельности…

2 месяца ago

Что такое Zabbix

Zabbix — бесплатная система мониторинга. Позволяет отслеживать состояние сетевых узлов, компьютеров и серверов. Возможности: Поддержка…

2 месяца ago

Что такое YouTube

YouTube — компания-владелец одноименного портала для просмотра и хранения видео. Чтобы пользоваться данным порталом достаточно…

2 месяца ago

Что такое yota

Yota — провайдер, предоставляющий доступ к сети Интернет по беспроводной связи. Впервые, сервис начал работать…

2 месяца ago