Перенос joomla на linux

Как установить Joomla с Apache в Ubuntu 18.04

Joomla — одна из самых популярных систем управления контентом с открытым исходным кодом, на которой работают сотни тысяч веб-сайтов. Он написан на PHP и содержит массу функций, которые можно расширить с помощью бесплатных и дополнительных расширений и тем. С Joomla вы можете легко создать свой магазин электронной коммерции, личный веб-сайт, социальный сайт или блог.

В этом руководстве мы объясним, как установить Joomla на Ubuntu 18.04. Мы будем использовать стек LAMP с Apache в качестве веб-сервера, SSL-сертификат, последнюю версию PHP 7.2 и MySQL / MariaDB в качестве сервера базы данных.

Подготовка

Прежде чем продолжить изучение этого руководства, убедитесь, что выполнены следующие предварительные условия:

  • Имейте доменное имя, указывающее на общедоступный IP-адрес вашего сервера. Мы будем использовать example.com .
  • Вы вошли в систему как пользователь с привилегиями sudo .
  • Apache устанавливается, следуя этим инструкциям .
  • У вас установлен сертификат SSL для вашего домена. Вы можете установить бесплатный SSL-сертификат Let’s Encrypt, следуя этим инструкциям .

Создание базы данных MySQL

Joomla может хранить свои данные, такие как статьи, категории, пользователи, расширения и настройки тем, в базе данных MySQL, PostgreSQL или MS SQL.

Мы будем использовать MySQL как внутреннюю базу данных. Если на вашем сервере Ubuntu не установлен MySQL, вы можете установить его, набрав:

sudo apt-get updatesudo apt-get install mysql-server

Войдите в консоль MySQL, набрав:

Из оболочки MySQL запустите следующий оператор SQL, чтобы создать базу данных :

CREATE DATABASE joomla CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
GRANT ALL ON joomla.* TO 'joomlauser'@'localhost' IDENTIFIED BY 'change-with-strong-password';

После этого выйдите из консоли mysql, набрав:

Установка PHP

PHP 7.2, который является версией PHP по умолчанию в Ubuntu 18.04, полностью поддерживается и рекомендуется для Joomla.

Установите PHP все необходимые расширения PHP с помощью следующей команды:

sudo apt updatesudo apt install php7.2 php7.2-cli php7.2-mysql php7.2-json php7.2-opcache php7.2-mbstring php7.2-intl php7.2-xml php7.2-gd php7.2-zip php7.2-curl php7.2-xmlrpc php7.2-xmlrpc

Установите рекомендуемые параметры PHP, отредактировав файл php.ini с помощью sed :

sudo sed -i "s/memory_limit = .*/memory_limit = 512M/" /etc/php/7.2/apache2/php.inisudo sed -i "s/upload_max_filesize = .*/upload_max_filesize = 256M/" /etc/php/7.2/apache2/php.inisudo sed -i "s/post_max_size = .*/post_max_size = 256M/" /etc/php/7.2/apache2/php.inisudo sed -i "s/output_buffering = .*/output_buffering = Off/" /etc/php/7.2/apache2/php.inisudo sed -i "s/max_execution_time = .*/max_execution_time = 300/" /etc/php/7.2/apache2/php.inisudo sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php/7.2/apache2/php.ini

Перезапустите apache, чтобы загрузились только что установленные расширения PHP:

sudo systemctl restart apache2

Скачивание Joomla

На момент написания этой статьи последней версией Joomla была версия 3.9.4.

Читайте также:  Linux mint настройка разрешения экрана

Перед загрузкой архива Joomla сначала создайте каталог, в котором будут храниться файлы Joomla, и перейдите к нему:

sudo mkdir -p /var/www/example.comcd /var/www/example.com

Затем загрузите текущую версию Joomla со страницы загрузок Joomla, используя следующую команду wget :

sudo wget https://downloads.joomla.org/cms/joomla3/3-9-4/Joomla_3-9-4-Stable-Full_Package.zip

После завершения загрузки распакуйте архив и переместите файлы в корневой каталог документов домена:

sudo unzip Joomla_3-9-4-Stable-Full_Package.zip

Измените владельца каталога на www-data с помощью команды chown, чтобы веб-сервер имел полный доступ к файлам и каталогам сайта:

sudo chown -R www-data: /var/www/example.com 

Настройка Apache

К настоящему времени у вас уже должен быть установлен Apache с сертификатом SSL в вашей системе, если нет, проверьте предварительные требования для этого руководства.

Следующим шагом является редактирование конфигурации виртуальных хостов Apache:

sudo nano /etc/apache2/sites-available/example.com.conf

Следующая конфигурация Apache [перенаправляет HTTP на HTTPS] и www на версию вашего домена без www и включает HTTP2. Не забудьте заменить example.com своим доменом Joomla и указать правильный путь к файлам сертификатов SSL.

 *:80> ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/  *:443> ServerName example.com ServerAlias www.example.com Protocols h2 http/1.1  "% == 'www.example.com'"> Redirect permanent / https://example.com/ DirectoryIndex index.html index.php DocumentRoot /var/www/example.com ErrorLog $/example.com-error.log CustomLog $/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem  /var/www/example.com> Options FollowSymLinks AllowOverride All Require all granted  

Если не включен, включите виртуальный хост для домена. Эта команда создаст символическую ссылку с sites-available на каталог sites-enabled :

Чтобы новая конфигурация вступила в силу, перезапустите службу Apache, набрав:

sudo systemctl restart apache2

Завершение установки Joomla

Теперь, когда Joomla загружена и настройка сервера завершена, пора завершить установку Joomla с помощью веб-интерфейса.

Откройте браузер, введите свой домен, и появится экран, подобный следующему:

Выберите язык, который вы хотите использовать, и введите следующую информацию:

  • Имя сайта — имя вашего нового веб-сайта Joomla.
  • Описание — Описание сайта. Это резервное метаописание, которое будет использоваться на каждой странице без конкретного описания.
  • Адрес электронной почты администратора — адрес электронной почты администратора. Используйте действующий адрес электронной почты. Если вы забудете свой пароль, вы получите ссылку для изменения пароля на этот адрес электронной почты.
  • Имя пользователя администратора — имя пользователя с правами администратора. В целях безопасности установите для имени пользователя другое значение, кроме «admin».
  • Пароль администраторапароль администратора. Убедитесь, что вы используете надежный пароль. Введите тот же пароль в поле Подтверждение пароля администратора .
  • Сайт не в сети — оставьте значение по умолчанию «Нет». Если вы выберете «Да», после завершения установки веб-сайт отобразит «Сайт не в сети».

Когда закончите, нажмите кнопку «Далее».

На следующем экране мастер настройки попросит вас ввести данные подключения к базе данных.

  • Тип базы данных — оставьте значение по умолчанию «MySQLi».
  • Имя хоста — оставьте значение по умолчанию «localhost». Если это руководство, база данных находится на том же сервере.
  • Имя пользователя , пароль , имя базы данных — введите данные пользователя MySQL и базы данных, которые вы создали ранее.
  • Префикс таблицы — оставьте автоматически созданный префикс.
  • Старый процесс базы данных — оставьте параметр по умолчанию «Резервное копирование».
Читайте также:  Открыть файл img linux

После нажатия кнопки «Далее» вы будете перенаправлены на страницу обзора:

Здесь вы можете выбрать установку демонстрационных данных и убедиться, что все проверки пройдены. Нажмите на кнопку « Install , и после завершения установки вы попадете на страницу, информирующую вас о том, что Joomla установлена.

Если вы хотите установить дополнительные языки, нажмите кнопку «Дополнительные шаги: Установить языки».

По соображениям безопасности вам необходимо удалить каталог установки. Для этого вернитесь в терминал и выполните следующую команду rm :

sudo rm -rf /var/www/example.com/installation

Чтобы получить доступ к вашей серверной части Joomla, нажмите кнопку « Adminstrator . Отсюда вы можете начать настройку вашей установки Joomla, установив новые темы и плагины.

Выводы

Поздравляем, вы успешно установили Joomla с Apache на свой сервер Ubuntu 18.04. Документация Joomla — хорошая отправная точка, чтобы узнать больше о том, как начать работу с вашим новым сайтом Joomla.

Если у вас есть вопросы, не стесняйтесь оставлять комментарии ниже.

Источник

Перенос сайта Joomla на другой сервер

ВКонтакте Одноклассники Facebook Twitter Google+ Мой Мир@Mail.Ru Печатать

Нередко возникает ситуация когда необходимо перенести сайт на другой хостинг. При этом можно использовать инструменты панели управления и/или дополнительные программы вроде EMS SQL Manager. Однако при наличии доступа по ssh к локальному и удаленному серверу, все можно сделать штатными средствами OS. Перенос осуществляется в три этапа:

Копировать будет утилитой scp, которая входит в состав пакета openssh-clients, поэтому сначала необходимо на обоих серверах установить данный пакет:

# yum install openssh-clients

Создание базы данных и пользователя MySQ

Необходимо подключиться к консоли mysql:

и выполнить следующие запросы:

CREATE USER 'имя_пользователя'@'localhost' IDENTIFIED BY 'пароль';
GRANT ALL PRIVILEGES ON имя_базы.* TO 'имя_пользователя'@'localhost';

Копирование MySQL

  1. Выгружаем базу данных в файл: # mysqldump —databases —create-options —comments -Q -uroot -p ‘имя_базы’ > /db.sql
  2. Копируем на удаленный сервер: # scp /db.sql root@удаленный_сервер:/
  3. Восстанавливаем базу на удаленном сервере: # mysql -uroot -hlocalhost -p < /db.sql

Копируем каталог с файлами

  1. Архивируем каталог с файлами: # zip -r /archive.zip /var/www/site
  2. Копируем архив на удаленный сервер: # scp /archive.zip root@удаленный_сервер:/
  3. Восстанавливаем каталог на удаленном сервере во временную папку: # unzip /archive.zip -d /tmp
  4. Копируем распакованные файлы из папки /tmp в папку сайта, и раздаем права: # chown -R apache:apache /var/www/site/*

Источник

Перенос joomla на linux

Перенос Joomla будет состоять из 4-х этапов:

  1. настройка доменного имени
  2. копирование файлов сайта
  3. экспорт/импорт базы данных (еще рассмотрим конвертацию кодировки с cp1251 в utf8)
  4. настройка параметров на новом сервере.
Читайте также:  Intel graphics opengl linux

Итак, 1) настройка доменного имени
При покупке доменного имени продавец должен выслать имя и пароль доступа настройки. Заходим в настройку доменного имени и создаем/редактируем записи:
подзона – @
A (тип записи)
приоритет – 0 (ноль) (если требуется)
адрес хоста – адрес сервера
Тоже самое нужно сделать с подзоной www
На сервере создаем VirtualHost
например, так:
ServerAdmin webmaster@localhost
ServerName mysite.com
ServerAlias http://www.mysite.com
DocumentRoot /srv/www/htdocs/mysite.com
ErrorLog /var/log/apache2/mysite.com-error_log
CustomLog /var/log/apache2/mysite.com_log combined

2) копирование файлов сайта
Тут вопросов не должно быть. Используем любой доступный способ копирования на сервер (ftp, ssh, webDAV, флешка …)
Не забываем про права доступа к файлам

3) экспорт/импорт базы данных (еще рассмотрим конвертацию кодировки с cp1251 в utf8)

а) экcпорт
mysqldump -u user -p mypassword databasename > backup.sql
скорее всего user – это root
К сожалению, у Денвера нету утилиты mysqldump. Поэтому можно скачать с сайта mysql файл (without installer, без установки) и копируем от туда mysqldump и вставляем в bin директорию, где установлен mysql

б) копируем файл на сервер

в)
(на сервере)
заходим в оболочку mysql (mysql –password для входа с паролем )

create user ‘myusername’@’localhost’ identified by ‘mypassword’ ;

create database mydbname character set utf8 collate utf8_general_ci;

grant all on mydbname .* to myusername @localhost ;

создали пользователя
создали базу (обратите внимание на кодировку)
дали все права для новому пользователю на новую базу

просмотреть кодировку созданной бд – show create database mydbname ;

г) конвертируем базу с cp1251 в utf8
iconv -f cp1251 -t utf8 backup.sql > backup-utf8.sql

в файлике backup-utf8.sql в строке
/*!40101 SET NAMES cp1251 */;
cp1251 меняем на utf8

д) импортируем базу
mysql -h localhost -u myusername -D mydbname –password= mypassword < backup-utf8.sql

для проверки импорта заходим в mysql под новым пользователем
mysql -u myusername -p mypassword mydbname

show tables ;

для установки кодировки в консоли mysql
SET character_set_client=’utf8′;

SET character_set_results=’utf8′;

SET character_set_connection=’utf8′;
( для справки : Переменная character_set_client устанавливает кодировку данных отправляемых от клиента, переменная character_set_results устанавливает кодировку данных отправляемых клиенту, переменная character_set_connection устанавливает кодировку, в которую преобразуется информация пришедшая от клиента, перед выполнением запроса на сервере. )
или просто
SET NAMES ‘utf8’ (который заменяет эти 3 команды)
и смотрим одну из таблиц
select * from mytablename ;

4) настройка параметров на новом сервере.
открываем для редактирования файл configuration.php (желательно предварительно сохраните оригинал)
редактируем поля
var $user = ‘myusername’;

var $log_path = ‘/новый/путь/к/папке/logs’;

var $tmp_path = ‘/новый/путь/к/папке/tmp’;

Заходим на сайт, проверяем, радуемся (или исправляем ошибки, а потом радуемя)

Источник

Оцените статью
Adblock
detector