Содержание

Битрикс: Apache+PHP+MySQL+Nginx

APC

Добавляем в /etc/php5/conf.d/apc.ini

; Settings for Bitrix
apc.num_files_hint=20000 	 
apc.user_entries_hint=20000 	 
apc.ttl=86400 	 
apc.max_file_size=8M
apc.shm_size=512M

PHP

Добавляем в .htaccess

  php_flag session.use_trans_sid off
  php_value max_execution_time 300
  php_value realpath_cache_size 8192
  php_value max_input_vars 3000
  php_value memory_limit 128M
  php_value upload_tmp_dir /home/testuser/tmp
  php_value upload_max_filesize 512M
  php_value session.save_path /home/testuser/tmp
#  php_value pcre.recursion_limit 14000
#  php_value realpath_cache_size 4096k

Apache2

Добавить в /etc/init.d/apache2 строку

ulimit -s unlimited

Для соответствия php5/mbstring пожеланиям битрикса можно добавить в конфигурацию виртуального хоста следующее:

<IfModule mod_php5.c>
    php_value default_charset utf-8
    php_admin_value mbstring.func_overload 2
    php_value mbstring.internal_encoding utf-8
    php_admin_value realpath_cache_size "4096k"
</IfModule>

MySQL

Добавить в /etc/mysql/my.cnf

[mysqld]
transaction-isolation = READ-COMMITTED
tmp_table_size = 48M
max_heap_table_size = 48M
table_open_cache = 800
innodb_flush_log_at_trx_commit = 2
innodb_flush_method = O_DIRECT

Траблшутинг

Работа с сокетами: Ошибка

Варианты:

Размер стека и pcre.recursion_limit Замечание. Возможны проблемы в работе с длинными строками из-за системных ограничений

CentOs:

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

После это предупреждения о проблемах с размером стека и pcre.recursion_limit появляться не будут

Где взять скрипт restore.php

Если есть готовый бэкап, то restore.php можно найти в bitrix/module/main/admin/