Веб-окружение Битрикс: How-To

Сборник советов, хаков и трюков связанных с 1С-Битрикс: Веб-окружение.

Пока здесь не очень много таковых, но статься будет пополняться. Не стесняйтесь делиться своим опытом и советами.

О том как установить 1С-Битрикс: Веб-окружение читайте в отдельной статье.

Как включить php расширение в VMBitrix

В BitrixVM по умолчанию часть php расширений может быть отключено.

Чтобы включить нужное, в директории /etc/php.d найдите файл с расширением и переименуйте из xx-you-extention.ini.disabled в xx-you-extention.ini

Например, чтобы включить расширение CURL, переименуйте 20-curl.ini.disabled в 20-curl.ini.

Если файл 20-curl.ini пустой, внесите в него следующую запись:

extension=curl.so

Затем перезапустите web сервер.

Алиасы сайтов в VMBitrix

Иногда нужно к одной папке сайта привязать несколько доменов (сделать алиасы).

Для сайта в конфиге Apache /etc/httpd/bx/conf/bx_ext_[название_сайта].conf найдите место:

<VirtualHost 127.0.0.1:8887>
    ServerName site1.ru
    ServerAlias www.site1.ru

Допишите в него домены:

<VirtualHost 127.0.0.1:8887>
    ServerName site1.ru
    ServerAlias www.site1.ru alias1.ru alias2.com

Далее добавьте алиасы в конфиги Nginx /etc/nginx/bx/site_avaliable/bx_ext_[название_сайта].conf и /etc/nginx/bx/site_avaliable/bx_ext_ssl_[название_сайта].conf.

Найдите место:

# Additional website
server {
    listen 80;
    server_name site1.ru;
    #charset  utf-8;
    server_name_in_redirect off;

Допишите домены:

# Additional website
server {
    listen 80;
    server_name site1.ru www.site1.ru alias1.ru alias2.com;;
    #charset  utf-8;
    server_name_in_redirect off;

Затем перезагрузите Apache и Nginx.

#  /etc/init.d/httpd restart
#  /etc/init.d/nginx restart

Размер стека и pcre.recursion_limit

На версиях BitrixVM ниже версии 7.2, при проверки системы может наблюдаться следующая ошибка: Возможны проблемы в работе с длинными строками из-за системных ограничений.

Чтобы исправить, в файле /etc/php.d/bitrixenv.ini измените значение «pcre.recursion_limit = 14000» на «pcre.recursion_limit = 100000».

В скрипте запуска Apache /etc/rc.d/init.d/httpd измените функцию «start()», добавив в нее строку (ulimit -s unlimited):

start() {
    echo -n $"Starting $prog: "
    ulimit -s unlimited
    LANG=$HTTPD_LANG daemon --pidfile=${pidfile} $httpd $OPTIONS
    RETVAL=$?
    echo
    [ $RETVAL = 0 ] && touch ${lockfile}
    return $RETVAL
}

Затем перезагрузите сервер.

Повторно запустите проверку системы, ошибка должна исчезнуть.

На этом всё. Но вы можете помочь проекту. Даже небольшая сумма поможет нам писать больше полезных статей.

А если статья помогла или понравилась, пожалуйста поделитесь ей в соцсетях.