Сегодня рассмотрим установку Apache Solr и настройку на всеми нами любимый Debian для работы с Drupal 7.
Установка
Предварительно устанавливаем на сервер java и зависимости для solr
aptitude install openjdk-8-jdk sudo lsof acl
Создадим группу и пользователя solr
addgroup solr adduser --disabled-password --disabled-login --no-create-home --ingroup solr solr
Скачиваем дистрибутив с официального сайта
wget /opt/ https://archive.apache.org/dist/lucene/solr/6.6.2/solr-6.6.2.tgz
Распаковываем архив
cd /opt tar -xzvf solr-6.6.2.tgz
Запускаем скрипт для установки solr
/opt/solr-6.6.2/bin/install_solr_service.sh /opt/solr-6.6.2.tgz -i /opt -d /var/solr -u solr -s solr -p 8983
Конфигурация Solr
В файле с настройками службы solr /etc/default/solr.in.sh изменим параметры на следующие:
SOLR_JAVA_MEM="-Xms128M -Xmx256M" SOLR_PORT=8983 SOLR_TIMEZONE=Europe/Moscow
Для работы с Solr в Drupal понадобится установить модуль, я использовал модуль Search API Solr, интегрированный с Search API. В этом модуле есть файлы конфигурации для Solr, достаточно их просто скопировать.
Сначала создадим каталог для конфигурации ядра Solr
mkdir -p /var/solr/data/collection1/conf chown -R solr:solr /var/solr/data/
Если сайт установлен в папку /var/www, то для копирования конфигурации достаточно выполнить следующую команду
cp -ar /var/www/sites/all/modules/search_api_solr/solr-conf/6.x/* /var/solr/data/collection1/conf
Применим конфигурацию ядра для настройки Solr
su -c "/opt/solr/bin/solr create -c collection1 -p 8983" solr
Запуск Solr
Для запуска Solr достаточно выполнить команду в терминале
service solr start
для автоматического старта solr после перезагрузки выполняем команду
systemctl enable solr
Для проверки что solr запущен выполняем
service solr status
Теперь из браузера можно подключиться к Solr на страницу статуса http://localhost:8983/solr
Защита страницы статуса Solr
Защитить Solr можно с помощью правил Ip tables, например указав IP адрес с которого можно подключится. Если адрес 192.168.0.1, то правила будут такими
iptables -A INPUT -p tcp -s 192.168.0.1 --dport 8983 -j ACCEPT iptables -A INPUT -p tcp --dport 8983 -j DROP
для сохранения этих правил после перезагрузки выполняем команду
iptables-save > /etc/iptables.up.rules
Теперь Solr защищен.
Заключение
Теперь Solr установлен, запущен и защищен. Для подключения к Solr из Drupal в настройкам модуля Search API Solr указываем Url http://localhost:8983/solr/collection1
service solt status t на к заменить надо
service solr status
И капчу бредовую убери - так никаких комментов не будет.