Установка Semmi Analytics

Вы можете установить веб-панель Semmi Analytics на сервер, домашний компьютер или виртуальную машину с операционной системой семейства Linux. Для корректной работы программы вам понадобится:

  • Операционная система: Ubuntu 18.04/CentOS 7, скорее всего, программа будет работать и в других системах, однако были протестированы только эти;
  • Компоненты: MariaDB не ниже 10.1 или MySQL не ниже 5.6, PHP 7 или более новая версия, Elasticsearch 6.5 или более новая версия, а также веб-сервер Apache или Nginx.
  • Инструменты: для загрузки исходного кода вам понадобится git, а для установки всех зависимостей — Composer.

Установка Semmi Analytics на Ubuntu

1. Установка необходимых компонентов

Сначала вам нужно установить веб-сервер Apache:

sudo apt install apache2

Затем установите сервер баз данных MariaDB:

sudo apt install mariadb-server mariadb-client

И интерпретатор языка программирования PHP:

sudo apt install php7.2 libapache2-mod-php7.2 php-mysql

Для нормальной работы программы нам также понадобятся такие библиотеки PHP:

sudo apt install php-curl php-json php-zip php-mbstring php-xml php-xmlrpc

Для работы Elasticsearch нужна Java. Установите её:

sudo apt install openjdk-8-jre

Затем необходимо установить Elasticsearch. Для этого добавьте официальный репозиторий и установите самую свежую версию оттуда:

sudo apt install apt-transport-https
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
echo "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-6.x.list
sudo apt update
sudo apt install elasticsearch

Затем установите git и composer:

sudo apt install git composer

2. Настройка компонентов

Сначала займемся настройкой веб-сервера Apache. Необходимо включить плагин mod_rewrite:

sudo a2enmod rewrite

Затем в основном конфигурационном файле Apache убедитесь, что для директории, в которой будут расположены файлы Semmi Analytics включена директива AllowOverride:

sudo vi /etc/apache2/apache2.conf

<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>

Далее создаем директорию, где будет находится программа, например, в /var/www:

sudo mkdir -p /var/www/semmi-analytics/public_html/
sudo chown -R www-data:www-data /var/www/semmi-analytics

Затем создаем виртуальный хост для Apache:

vi /etc/apache2/sites-available/semmi-analytics.conf
<VirtualHost *:80>
ServerName semmi-analytics
ServerAlias www.semmi-analytics
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
DocumentRoot /var/www/semmi-analytics/public_html/
</VirtualHost>

Вместо semmi-analytics используйте нужный вам домен. Активируйте только что созданный хост:

sudo a2ensite semmi-analytics

Для настройки базы данных MariaDB выполните такую команду:

sudo mysql_secure_installation

Затем вам нужно будет ответить на все вопросы утилиты и задать пароль для суперпользователя. Затем нам нужно внести ещё некоторые изменения в настройки PHP. Поскольку программа будет работать с большими объемами данных, это может занять много времени, поэтому в файле /etc/php/php.ini желательно увеличить значение параметра max_execution_time. Также желательно увеличить объем памяти, доступный для скрипта:

vi /etc/php/php.ini

max_execution_time = 900
memory_limit = 1024M
max_input_vars = 5000

Перезапустите Apache и запустите Elasticsearch

sudo systemctl restart apache2
sudo systemctl start elasticsearch

3. Создание базы данных

Для хранения информации о работе приложения нужна база данных. Чтобы её создать, откройте командную строку MySQL и выполните такие команды:

sudo mysql

> CREATE DATABASE semmi_db;
> CREATE USER 'semmi_user'@'localhost' IDENTIFIED BY 'password';
> GRANT ALL PRIVILEGES ON semmi_db . * TO 'semmi_user'@'localhost';

Здесь password нужно заменить на пароль, который вы хотите задать для этого пользователя. Теперь почти все готово для установки программы.

4. Загрузка программы

Чтобы установить программу перейдите в каталог, созданный для её размещения и загрузите туда исходники с GitHub:

cd /var/www/semmi-analytics/
sudo git clone https://github.com/Seriyyy95/semmi ./

Затем установите все зависимости с помощью composer:

sudo composer update

Затем поменяйте права на файлы в этом каталоге:

sudo chown -R www-data:www-data /var/www/semmi-analytics

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

sudo -u www-data php src/proccess.php /setup

На первом шаге вам нужно задать хост, имя базы данных, имя пользователя базы данных и пароль:

Далее укажите Email пользователя и пароль для входа в веб-интерфейс:

Пользователь создан. Для авторизации используйте такие данные:

Логин: admin@semmi.ru
Пароль: password

Все, установка завершена и теперь вы можете пользоваться программой. Изменить настройки базы данных можно в любой момент в конфигурационном файле src/slim-db-settings.php и phinx-db-settings.php. Если вы изменяете параметры подключения к базе, то изменяйте их в обоих файлах. Или вы можете выполнить скрипт /setup с опцией force.

sudo -u www-data php src/proccess.php /setup?force=1

5. Настройка Elasticsearch

По умолчанию, программа предполагает, что Elasticsearch доступен на локальном компьютере и не требует аутентификации. Если у вас есть несколько хостов Elasticsearch и вы для доступа к ним нужна аутентификация, вы можете настроить их через файл src/elastic-settings.php

В массив hosts нужно добавить адрес вашего хоста. Он может быть представлен в двух форматах:

ip_адрес:порт

Например, localhost:9200. Или:

 array(
"host" => "хост",
"port" => порт,
"scheme" => "протокол",
"user" => "имя пользователя",
"pass" => "пароль пользователя",
)

Вы можете добавить несколько таких хостов.

6. Настройка фоновых задач

Загрузка данных из Google Search Console и Google Analytics выполняется в фоновом режиме. Поэтому чтобы все работало вам необходимо запустить фоновый процесс, для этого выполните:

php src/proccess.php /servicemanager &

Также поддерживается возможность автоматической загрузки новых данных из этих сервисов. Для работы этой функции необходимо добавить такие строчки в планировщик cron:

crontab -e

/usr/bin/php /var/www/semmi-analytics/src/proccess.php /gsccron
/usr/bin/php /var/www/semmi-analytics/src/proccess.php /gacron

7. Настройка hosts

Если вы устанавливали программу на локальную машину, что чтобы получить адрес к настроенному доменному имени необходимо добавить его в файл /etc/hosts. Строка должна выглядеть вот так:

vi /etc/hosts

127.0.0.1 semmi-analytics

Вместо semmi-analytics используйте тот домен, который вы настроили для Apache.

Выводы

Готово, после всех этих действий вы можете открывать интерфейс программы, загружать данные и использовать её для улучшения позиций ваших сайтов.

Читайте также:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *