Search API Solr. Автоисправление ошибок с помощью Solr Spell Checking

На сайте имеется поиск созданный модулями Views и Search API Solr Search. Задача - автоматически исправлять ошибки в искомых словах и показывать результаты для исправленных слов.

Для решения напишем небольшой модуль, который будет зависить от модуля Search API Spellcheck. Устанавливаем его и переходим к написанию собственного модуля. Для примера я назову модуль "search_api_misspell". Создаем файл "search_api_misspell.info":

Benya

Установка и настройка MailCatcher

MailCatcher позволяет перехватывать отправленные электронные сообщения. Для меня он удобен тем, что перехваченное сообщение можно просматривать в браузере. Очень удобно, когда нужно настроить текст электронного сообщения, особенно когда речь идет об HTML.

Установка Ruby

В терминале выполняем команды:

sudo apt-add-repository ppa:brightbox/ruby-ng
sudo apt-get update
sudo apt-get install ruby2.2 ruby2.2-dev

Установка и настройка MailCatcher

Для установки в терминале выполянем команду:...

Benya

Установка и настройка Varnish

Для установки Varnish логинимся как root:

sudo -i

Затем в терминале выполняем следующие команды:

apt-get install apt-transport-https
curl https://repo.varnish-cache.org/GPG-key.txt | apt-key add -
echo "deb https://repo.varnish-cache.org/ubuntu/ trusty varnish-4.1" \
     >> /etc/apt/sources.list.d/varnish-cache.list
apt-get update
apt-get install varnish

После того, как выполнили команды выходим из под root:

Benya

Установка Apache Solr

Установка Java

Для начала необходимо установить Java, для этого в терминале выполняем команды:

sudo add-apt-repository ppa:webupd8team/java -y
sudo apt-get update
sudo apt-get install oracle-java8-installer

Проверяем установку:

java -version

Должны увидеть примерно следующее:

java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed...
Benya

Установка Composer, Git и Drush

Установка Composer

В терминале выполняем команду:

curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer

Проверяем установку:

which composer

Должны увидеть примерно следующее:

/usr/local/bin/composer

Возвращаем права на директорию ~/.composer:

sudo chown -R your_user:your_group ~/.composer
Benya

Настройка MySQL Server и OpenSSH Server

Настройка MySQL Server

MySQL Server у меня уже установлен (как одна из зависимостей PHPBrew).

Для работы с базами данных я использую программу, которая установлена на основном PC, а не на виртуальном сервере. Для успешного подключения необходимо изменить настройки в файле /etc/mysql/my.cnf:

sudo nano /etc/mysql/my.cnf

Находим строку bind-address = 127.0.0.1 и меняем ее на bind-address = 0.0.0.0.

Перезапускаем MySQL Server:

...
Benya

Установка и настройка PHPBrew

PHPBrew - позволяет собрать и установить несколько различных версий PHP.

Установка зависимостей

В терминале выполняем команды:

sudo apt-get update
sudo apt-get build-dep php5
sudo apt-get install php5 php5-dev php-pear autoconf automake curl libcurl3-openssl-dev build-essential libxslt1-dev re2c libxml2 libxml2-dev php5-cli bison libbz2-dev libreadline-dev
sudo apt-get install libfreetype6 libfreetype6-dev libpng12-0 libpng12-dev libjpeg-dev libjpeg8-dev libjpeg8  libgd-dev...
Benya

Установка и настройка Apache2

Для установки Apache2 в терминале выполняем следующую команду:

sudo apt-get install apache2

Настройка apache2.conf

В терминале выполняем команду:

sudo nano /etc/apache2/apache2.conf

Добавляем строку ServerName localhost.

Находим <Directory /var/www/> и меняем на <Directory /home/your_user/websites/>.

Внутри <Directory /home/your_user/websites/> меняем ...

Benya