Создайте файл в корневом каталоге для просмотра детальной информации о версии PHP:
<?php phpinfo(); ?>
Найдите на странице значение флагов build_alias, host_alias, справа от ячейки Configure Command, их потребуется указать в команде для сборки расширений. Значение зависит от аппаратной платформы, например: x86_64-linux-gnu.
Установите зависимости для сборки:
apt install make
apt install build-essential libtool autoconf automake
Установите и запустите Redis Server:
apt install redis-server
systemctl enable redis
systemctl start redis
Установка расширения Igbinary
Смените каталог для загрузки новых расширений, и выполните команды по очереди с правами root:
cd /usr/local/src
wget https://github.com/igbinary/igbinary/archive/refs/tags/3.2.14.zip -O igbinary.zip
unzip -o ./igbinary.zip
cd igbinary-3.2.14/
/opt/php81/bin/phpize
./configure --host=x86_64-linux-gnu --with-php-config=/opt/php81/bin/php-config --build=x86_64-linux-gnu make && make install
echo 'extension=igbinary.so' > /opt/php81/etc/php.d/igbinary.ini
Установка расширения Redis
cd /usr/local/src
wget https://github.com/phpredis/phpredis/archive/refs/tags/5.3.7.zip -O phpredis.zip
unzip -o ./phpredis.zip
cd phpredis-5.3.7/
/opt/php81/bin/phpize
./configure --host=x86_64-linux-gnu --with-php-config=/opt/php81/bin/php-config --enable-redis-igbinary --build=x86_64-linux-gnu make && make install
echo 'extension=redis.so' > /opt/php81/etc/php.d/redis.ini
Проверка установки
Перезагрузите сервер:
systemctl restart apache2
systemctl restart php-fpm81.service
systemctl restart nginx.service
Проверьте наличие исполняемых файлов igbinary.so
и redis.so
в каталоге PHP:
cd /opt/php81/lib/php/modules/
/opt/php81/bin/php -m | grep redis
В ISP Manager, зайдите в раздел Настройки PHP, отметьте версию 8.1.27 и нажмите кнопку Управление расширениями
. Если установка выполнена верно, модули будут подсвечены зеленым индикатором.
Подключение Redis в 1С-Битрикс
Для подключения кеширования Redis, добавьте в файл .settings.php
этот код:
'cache' => array(
'value' => array(
'type' => array(
'class_name' => '\\Bitrix\\Main\\Data\\CacheEngineRedis',
'extension' => 'redis'
),
'redis' => array(
'host' => '127.0.0.1',
'port' => '6379',
),
'sid' => $_SERVER["DOCUMENT_ROOT"]."#01"
),
),
В панели производительности 1С-Битрикс, убедитесь, что значение настройки хранения кеша установлено на cacheengineredis.
На сайте в режиме отладки, проверьте корректность кеширования SQL запросов. При повторном обращении к страницам, их число должно снижаться.