Page 1 of 2

Vesta + Bitrix

Posted: Mon Mar 05, 2018 7:44 pm
by ast
Всем доброй ночи. Понадобилось на VestaCP запилить сайт на битрикс.
Для этого нужно несколько изменений в php.ini и my.cnf
В php.ini
Нужно было поменять несколько строчек:
Ключевая: "mbstring.func_overload = 0" на "mbstring.func_overload = 2"
После этого изменения перестала работать web морда почты.
"ERROR: Wrong 'mbstring.func_overload' option value and it wasn't possible to set it to required value (0). Check your PHP configuration (including php_admin_flag)."
Как я понял он просит вернуть всё обратно =) Подскажите как быть в данной ситуации.

п.С.
Идеальный для меня вариант чтобы php.ini и my.cnf для сайтов на битрикс были свои, для всего остального оставалось оригинальным.


Подскажите как быть.

Re: Vesta + Bitrix

Posted: Tue Mar 06, 2018 10:48 am
by demian
для дефолтной версии php

Code: Select all

# cat /usr/local/vesta/data/templates/web/httpd/bitrix.tpl
<VirtualHost %ip%:%web_port%>

    ServerName %domain_idn%
    %alias_string%
    ServerAdmin %email%
    DocumentRoot %docroot%
    ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/
    Alias /vstats/ %home%/%user%/web/%domain%/stats/
    Alias /error/ %home%/%user%/web/%domain%/document_errors/
    #SuexecUserGroup %user% %group%
    CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes
    CustomLog /var/log/%web_system%/domains/%domain%.log combined
    ErrorLog /var/log/%web_system%/domains/%domain%.error.log
    <Directory %docroot%>
        AllowOverride All
        Options +Includes -Indexes +ExecCGI
        php_admin_value upload_max_filesize 10M
        php_admin_value max_execution_time 60
        php_admin_value post_max_size  10M
        php_admin_value memory_limit 256M
        php_admin_value max_input_vars 100000
        php_admin_value mbstring.func_overload 2
        php_admin_value mbstring.internal_encoding utf-8
        php_admin_flag mysql.allow_persistent  off
        php_admin_flag safe_mode off
        php_admin_value upload_tmp_dir %home%/%user%/tmp
        php_admin_value session.save_path %home%/%user%/tmp
    </Directory>
    <Directory %home%/%user%/web/%domain%/stats>
        AllowOverride All
    </Directory>
    <IfModule mod_ruid2.c>
        RMode config
        RUidGid %user% %group%
        RGroups apache
    </IfModule>
    <IfModule itk.c>
        AssignUserID %user% %group%
    </IfModule>

    IncludeOptional %home%/%user%/conf/web/%web_system%.%domain_idn%.conf*

</VirtualHost>

Code: Select all

# cat /usr/local/vesta/data/templates/web/httpd/bitrix.stpl
<VirtualHost %ip%:%web_ssl_port%>

    ServerName %domain_idn%
    %alias_string%
    ServerAdmin %email%
    DocumentRoot %sdocroot%
    ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/
    Alias /vstats/ %home%/%user%/web/%domain%/stats/
    Alias /error/ %home%/%user%/web/%domain%/document_errors/
    #SuexecUserGroup %user% %group%
    CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes
    CustomLog /var/log/%web_system%/domains/%domain%.log combined
    ErrorLog /var/log/%web_system%/domains/%domain%.error.log
    <Directory %sdocroot%>
        AllowOverride All
        SSLRequireSSL
        Options +Includes -Indexes +ExecCGI
        php_admin_value upload_max_filesize 10M
        php_admin_value max_execution_time 60
        php_admin_value post_max_size  10M
        php_admin_value memory_limit 256M
        php_admin_value max_input_vars 100000
        php_admin_value mbstring.func_overload 2
        php_admin_value mbstring.internal_encoding utf-8
        php_admin_flag mysql.allow_persistent  off
        php_admin_flag safe_mode off
        php_admin_value upload_tmp_dir %home%/%user%/tmp
        php_admin_value session.save_path %home%/%user%/tmp
    </Directory>
    <Directory %home%/%user%/web/%domain%/stats>
        AllowOverride All
    </Directory>
    SSLEngine on
    SSLVerifyClient none
    SSLCertificateFile %ssl_crt%
    SSLCertificateKeyFile %ssl_key%
    %ssl_ca_str%SSLCertificateChainFile %ssl_ca%
    <IfModule mod_ruid2.c>
        RMode config
        RUidGid %user% %group%
        RGroups apache
    </IfModule>
    <IfModule itk.c>
        AssignUserID %user% %group%
    </IfModule>

    IncludeOptional %home%/%user%/conf/web/s%web_system%.%domain_idn%.conf*

</VirtualHost>

у мускула конфиг один в принципе он подойдет и для остальных сайтов
Внимание данный конфиг для хостинга с объемом оперативной памяти не менее 4GB, параметры актуальные для Binrix помечены коментариями

Code: Select all

# cat /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
symbolic-links=0

skip-external-locking
skip-name-resolve = 1

# для Bitrix 
transaction-isolation = READ-COMMITTED
#

key_buffer_size = 64M

max_allowed_packet = 32M

table_open_cache = 1k

sort_buffer_size = 4M
join_buffer_size = 1M
read_buffer_size = 1M
read_rnd_buffer_size = 4M

myisam_sort_buffer_size = 16M
query_cache_size= 16M
query_cache_limit = 16M
tmp_table_size = 128M
max_heap_table_size = 128M

thread_cache_size = 200
thread_concurrency = 25

# для Bitrix 
innodb_use_native_aio = 0
innodb_file_per_table
innodb_flush_log_at_trx_commit = 2
innodb_flush_method = O_DIRECT
innodb_buffer_pool_instances = 1
##
innodb_buffer_pool_size = 64M



max_connections=200
#max_user_connections=50
#wait_timeout=10
#interactive_timeout=50

long_query_time=5
slow_query_log=1
slow_query_log_file=/var/log/mariadb/slow-queries.log


[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid

#
# include all files from the config directory
#
!includedir /etc/my.cnf.d


Re: Vesta + Bitrix

Posted: Wed Mar 07, 2018 8:16 pm
by ast
demian wrote:
Tue Mar 06, 2018 10:48 am
для дефолтной версии php

Code: Select all

# cat /usr/local/vesta/data/templates/web/httpd/bitrix.tpl
<VirtualHost %ip%:%web_port%>

    ServerName %domain_idn%
    %alias_string%
    ServerAdmin %email%
    DocumentRoot %docroot%
    ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/
    Alias /vstats/ %home%/%user%/web/%domain%/stats/
    Alias /error/ %home%/%user%/web/%domain%/document_errors/
    #SuexecUserGroup %user% %group%
    CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes
    CustomLog /var/log/%web_system%/domains/%domain%.log combined
    ErrorLog /var/log/%web_system%/domains/%domain%.error.log
    <Directory %docroot%>
        AllowOverride All
        Options +Includes -Indexes +ExecCGI
        php_admin_value upload_max_filesize 10M
        php_admin_value max_execution_time 60
        php_admin_value post_max_size  10M
        php_admin_value memory_limit 256M
        php_admin_value max_input_vars 100000
        php_admin_value mbstring.func_overload 2
        php_admin_value mbstring.internal_encoding utf-8
        php_admin_flag mysql.allow_persistent  off
        php_admin_flag safe_mode off
        php_admin_value upload_tmp_dir %home%/%user%/tmp
        php_admin_value session.save_path %home%/%user%/tmp
    </Directory>
    <Directory %home%/%user%/web/%domain%/stats>
        AllowOverride All
    </Directory>
    <IfModule mod_ruid2.c>
        RMode config
        RUidGid %user% %group%
        RGroups apache
    </IfModule>
    <IfModule itk.c>
        AssignUserID %user% %group%
    </IfModule>

    IncludeOptional %home%/%user%/conf/web/%web_system%.%domain_idn%.conf*

</VirtualHost>

Code: Select all

# cat /usr/local/vesta/data/templates/web/httpd/bitrix.stpl
<VirtualHost %ip%:%web_ssl_port%>

    ServerName %domain_idn%
    %alias_string%
    ServerAdmin %email%
    DocumentRoot %sdocroot%
    ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/
    Alias /vstats/ %home%/%user%/web/%domain%/stats/
    Alias /error/ %home%/%user%/web/%domain%/document_errors/
    #SuexecUserGroup %user% %group%
    CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes
    CustomLog /var/log/%web_system%/domains/%domain%.log combined
    ErrorLog /var/log/%web_system%/domains/%domain%.error.log
    <Directory %sdocroot%>
        AllowOverride All
        SSLRequireSSL
        Options +Includes -Indexes +ExecCGI
        php_admin_value upload_max_filesize 10M
        php_admin_value max_execution_time 60
        php_admin_value post_max_size  10M
        php_admin_value memory_limit 256M
        php_admin_value max_input_vars 100000
        php_admin_value mbstring.func_overload 2
        php_admin_value mbstring.internal_encoding utf-8
        php_admin_flag mysql.allow_persistent  off
        php_admin_flag safe_mode off
        php_admin_value upload_tmp_dir %home%/%user%/tmp
        php_admin_value session.save_path %home%/%user%/tmp
    </Directory>
    <Directory %home%/%user%/web/%domain%/stats>
        AllowOverride All
    </Directory>
    SSLEngine on
    SSLVerifyClient none
    SSLCertificateFile %ssl_crt%
    SSLCertificateKeyFile %ssl_key%
    %ssl_ca_str%SSLCertificateChainFile %ssl_ca%
    <IfModule mod_ruid2.c>
        RMode config
        RUidGid %user% %group%
        RGroups apache
    </IfModule>
    <IfModule itk.c>
        AssignUserID %user% %group%
    </IfModule>

    IncludeOptional %home%/%user%/conf/web/s%web_system%.%domain_idn%.conf*

</VirtualHost>

у мускула конфиг один в принципе он подойдет и для остальных сайтов
Внимание данный конфиг для хостинга с объемом оперативной памяти не менее 4GB, параметры актуальные для Binrix помечены коментариями

Code: Select all

# cat /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
symbolic-links=0

skip-external-locking
skip-name-resolve = 1

# для Bitrix 
transaction-isolation = READ-COMMITTED
#

key_buffer_size = 64M

max_allowed_packet = 32M

table_open_cache = 1k

sort_buffer_size = 4M
join_buffer_size = 1M
read_buffer_size = 1M
read_rnd_buffer_size = 4M

myisam_sort_buffer_size = 16M
query_cache_size= 16M
query_cache_limit = 16M
tmp_table_size = 128M
max_heap_table_size = 128M

thread_cache_size = 200
thread_concurrency = 25

# для Bitrix 
innodb_use_native_aio = 0
innodb_file_per_table
innodb_flush_log_at_trx_commit = 2
innodb_flush_method = O_DIRECT
innodb_buffer_pool_instances = 1
##
innodb_buffer_pool_size = 64M



max_connections=200
#max_user_connections=50
#wait_timeout=10
#interactive_timeout=50

long_query_time=5
slow_query_log=1
slow_query_log_file=/var/log/mariadb/slow-queries.log


[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid

#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

Спасибо, помогло!

Re: Vesta + Bitrix

Posted: Tue Oct 02, 2018 7:21 am
by deathstar
если нужно то и под nginx + php-fpm есть конфиг, а вообще советую сразу после установки весты под битрикс обновить PHP до минимум 71 и mariadb до 10.2 минимум

Re: Vesta + Bitrix

Posted: Tue Oct 02, 2018 9:14 am
by demian
deathstar wrote:
Tue Oct 02, 2018 7:21 am
если нужно то и под nginx + php-fpm есть конфиг, а вообще советую сразу после установки весты под битрикс обновить PHP до минимум 71 и mariadb до 10.2 минимум
под nginx + php-fpm непроблема. необходимо лишь настройки php из конфига индейца перенести в настройки php-fpm пула.
в доп файл для домена внести перенести редиректы из .htaccess

НО: большество писателей на пхп и продвиженцев вводит в ступор и поднимается крик, что надо переносить сайт на другой более хороший по их мнению хорстинг, т.к. на этом хостинге не работают редиректы.

ЗЫ: поднимать битрикс(как и вообще сайты) на связке nginx + php-fpm себе дороже. выведено имперически исходя из 14 лет настройки серверов под сайты.

Re: Vesta + Bitrix

Posted: Wed Oct 31, 2018 9:47 am
by deathstar
demian wrote:
Tue Oct 02, 2018 9:14 am
deathstar wrote:
Tue Oct 02, 2018 7:21 am
если нужно то и под nginx + php-fpm есть конфиг, а вообще советую сразу после установки весты под битрикс обновить PHP до минимум 71 и mariadb до 10.2 минимум
под nginx + php-fpm непроблема. необходимо лишь настройки php из конфига индейца перенести в настройки php-fpm пула.
в доп файл для домена внести перенести редиректы из .htaccess

НО: большество писателей на пхп и продвиженцев вводит в ступор и поднимается крик, что надо пересить сайт на другой более хороший по их мнению хорстинг, т.к. на этом хостинге не работают редиректы.

ЗЫ: поднимать битрикс(как и вообще сайты) на связке nginx + php-fpm себе дороже. выведено имперически исходя из 14 лет настройки серверов под сайты.
Ну как же ))

Битрикс ( Nginx + PHP-FPM )

https://24vek.com
https://x10.shop
https://tuning-start.ru

Да всяких море, оценка производительности https://st.fl.ru/users/De/DeathStar_Nam ... 81b0c4.png

Re: Vesta + Bitrix

Posted: Tue Feb 12, 2019 3:23 pm
by mailarn
Обращайтесь....Vesta настроил для Битрикс. Проблем нет.

Re: Vesta + Bitrix

Posted: Wed Feb 13, 2019 5:53 am
by mailarn
Надо менять файл в папке /home/admin/conf/web

Re: Vesta + Bitrix

Posted: Tue Mar 05, 2019 10:42 am
by Saks
deathstar wrote:
Wed Oct 31, 2018 9:47 am
demian wrote:
Tue Oct 02, 2018 9:14 am
deathstar wrote:
Tue Oct 02, 2018 7:21 am
если нужно то и под nginx + php-fpm есть конфиг, а вообще советую сразу после установки весты под битрикс обновить PHP до минимум 71 и mariadb до 10.2 минимум
под nginx + php-fpm непроблема. необходимо лишь настройки php из конфига индейца перенести в настройки php-fpm пула.
в доп файл для домена внести перенести редиректы из .htaccess

НО: большество писателей на пхп и продвиженцев вводит в ступор и поднимается крик, что надо пересить сайт на другой более хороший по их мнению хорстинг, т.к. на этом хостинге не работают редиректы.

ЗЫ: поднимать битрикс(как и вообще сайты) на связке nginx + php-fpm себе дороже. выведено имперически исходя из 14 лет настройки серверов под сайты.
Ну как же ))

Битрикс ( Nginx + PHP-FPM )

https://24vek.com
https://x10.shop
https://tuning-start.ru

Да всяких море, оценка производительности https://st.fl.ru/users/De/DeathStar_Nam ... 81b0c4.png
Все это конечно хорошо, но что то не вижу качественного скачка https://developers.google.com/speed/pag ... tart.ru%2F

Плюс если есть "свои" плаги и доработки то не факт что будет все нормально работать, не говоря о том что битрикс обычно "привязывают" к 1С , а там импорт-экспорт это что то с чем-то.

Re: Vesta + Bitrix

Posted: Fri Mar 08, 2019 5:44 pm
by mailarn
>>> https://tuning-start.ru/ - красивый сайт....

А если серьезно, Битрикс такая система, которая с каждым обновлением все более требовательна к хостингу (серверу). Я начинал с ними работать, примерно 10 лет назад. Сейчас они "думают", что у ВСЕХ, как правило, должен быть нормальный хостинг или нормальный сервер. На тех людей, которые по каким то причинам не могут себе этого позволить, они не оглядываются.
Сообщение для Saks - попробуй проверить пинг по этой инструкции https://yandex.ru/support/common/troubl ... dures.html
может не в Битриксе дело...
Лично у меня на одном сервере работают несколько сайтов на Битрикс, пока проблем не замечал.