Веб-окружение Битрикс: 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
}

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

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

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

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