====== Развертывание инсталляционного комплекта LSS проекта ====== [[start:|lss]] ===== Введение ===== **Инсталляционный комплект LSS проекта** это комплексный продукт, содержащий как **LSS визуализатор**, так и базовый комплект **LSS сервера**. Для работы LSS проекта необходимы: * сервер на базе операционной системы **Windows** или **Linux**; * web-сервер - **Apache** или **Nginx**; * **PHP7** или **PHP8**; * SQL сервер **PostgreSQL** или **MarioDB**; В этой инструкции мы используем **Linux**, **Apache**, **PHP7** и **PostgeSQL**. ===== Установка и настройка web-сервера Apache ===== * установить web-сервер **Apache** с базовыми настройками по умолчанию; * подключить модуль **mod_rewrite**; * настроить каталог для развертывания сайта. Предположим, что доменное имя сайта **lssproject.ru** а папка размещения проекта **/var/www/lssproject.ru**. Тогда необходимо создать следующую структуру папок для развертывания проекта: /var/www/lssproject.ru/log - логи Apache и отладочные логи **LSS сервера**. На эту папку web-сервер Apach должен иметь права на запись. /var/www/lssproject.ru/www - корневая, открытая по http папка сайта. Нужны права на чтение. /var/www/lssproject.ru/php - недоступная по http папка, в которой размещен PHP код LSS сервера. Нужны права на чтение. /var/www/lssproject.ru/export-import - недоступная по http папка, в которой размещаются служебные файлы экспорта и импорта. Нужны права на чтение и запись. * настроить **конфигурационный файл** Apache для работы с доменом **lssproject.ru** и папкой **/var/www/lssproject.ru/www**: ServerName lssproject.ru ServerAlias www.lssproject.ru DocumentRoot "/var/www/lssproject.ru/www" ErrorLog "/var/www/lssproject.ru/log/error.log" CustomLog "nul" combined Options Indexes FollowSymLinks Includes ExecCGI AllowOverride All Order allow,deny Allow from all Require all granted * разместить в папке **/var/www/lssproject.ru/www** файл с именем **index.html** и содержимым **Hello World!!!**. Зайти на сайт и убедиться что сервер работает, надпись **Hello World!!!** появляется в web-браузере. ===== Установка и настройка PHP7 ===== * установить **PHP7** с базовыми настройками по умолчанию; * установить расширения PHP: date, dom, fileinfo, hash, openssl, session, sockets, json, xml, xmlreader, xmlwriter, mbstring, pdo, pdo_pgsql, zip; * настроить в **php.ini**: * часовой пояс: **date.timezone** - например Etc/GMT-3 для Москвы; * максимальное время выполнения скрипта (в секундах): **max_execution_time**; * максимальный размер загружаемого файла: **upload_max_filesize**; * максимальный размер отправляемого запроса: **post_max_size**; * отключить буферизацию: **output_buffering** = Off; * проверка ошибок: **error_reporting** = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED; * время жизни сессии: * **session.gc_maxlifetime**=<время жизни сессии в секундах> - например 0 неограниченно, 86400 - сутки; * **session.cookie_lifetime**=0; * в папке проекта **/var/www/lssproject.ru/www** разместить тестовый файл **phpinfo.php** со следующим содержимым: * зайти **web-браузером** на страницу тестирования работоспособности проекта **lssproject.ru/phpinfo.php** и убедится, что php установлен, все требуемые настройки корректно заданы ===== Установка и настройка PostgreSQL ===== * установить **PostgreSQL** с базовыми настройками по умолчанию и утилитой **pgAdmin**; * задать пользователю **postgres** пароль для доступа к SQL серверу, в данной инструкции будем предполагать, что задан пароль **1** ===== Установка инсталляционного комплекта, в виде шаблона LSS проекта ===== * очистить содержимое папки **/var/www/lssproject.ru/www**; * скачать шаблон LSS проекта **lss-project-template.zip** и разархивировать его в папку **/var/www/lssproject.ru**, раздать права на папки проекта для доступа web-серверу **Apache**: * на чтение всем подпапкам и файлам **/var/www/lssproject.ru**; * на запись папкам, подпапкам и файлам: **/var/www/lssproject.ru/export-import**, **/var/www/lssproject.ru/log**, **/var/www/lssproject.ru/php/datasources/autogen** * используя pgAdmin создать пустую базу данных проекта, будем считать, что она называется **lssproject**; * на базе данных **lsproject** выполнить скрипт **/var/www/lssproject.ru/sql/pgsql-systable.sql**; * в настроечном файле площадки **/var/www/lssproject.ru/php/config/config-place.php** прописать параметры соединения с базой данных и параметры пользователя root (по умолчанию логин **root** и пароль **1**). Посредством web-браузера обратиться к странице по адресу **lssproject.ru** и убедиться, что шаблон LSS проекта работает. В окне аутентификации ввести логин root и пароль 1, в соответствии с указанными в конфигурационном файле значениями. ===== Демонстрационные примеры и ссылки ===== Демонстрационные примеры доступны в режиме "**только чтение**". Для входа используйте логин **root**, пароль **1**. * демонстрация работы **шаблона LSS проекта** у нас на сайте: [[https://lss.m-cti.ru/storage/example/lss-project-template]]