====== Bitrix - коллекция ошибок ====== ===== Mysql query error: (1227) ===== Ошибка Mysql query error: (1227) Access denied; you need (at least one of) the SYSTEM_VARIABLES_ADMIN or SESSION_VARIABLES_ADMIN privilege(s) for this operation (400) Решение GRANT SESSION_VARIABLES_ADMIN ON *.* TO 'bitrix_user'@'localhost'; ===== Ошибка в типе содержимого ===== ERR_CONTENT_DECODING_FAILED Добавить в htaccess zlib.output_compression = on или добавить в ''bitrix/php_interface/init.php'' (или ''dbconf.php'') define('BX_COMPRESSION_DISABLED',true); ===== Ошибка сокетов в site_checker ===== {{:web:bitrix:bitrix_sockets_failed.png?nolink|}} Причин много (корявый hosts файл, нет модуля sockets итд). Но оказывается всё из-за того, что на ''/bitrix/admin/'' установлен htpasswd (логин/пароль). Браво Битрикс! Райская система. Всем рекомендую. ===== Не меняется memory_limit ===== Ещё одна дикая проблема Битрикса. Тому кто это придумал надо пожать руку, а потом оторвать её. Не меняется memory_limit для PHP. Меняю в php.ini, меняю в htaccess, меняю где только можно, а результата нет. Смотрю phpinfo там правильный и master value и local value. Не первый день в айти. Надо просто копнуть глубже # grep -r --include=*.php "memory_limit" /var/www/foobar.com/ Какой-то сверх мозг в этой шайтан конторе решил, что будет весело прибить memory_limit гвоздями, потом полить супер-клеем и ещё сверху залить бетоном всё это дело. Ха-ха-ха, !@#$% смешно. /var/www/foobar/bitrix/modules/main/admin/site_checker.php: @ini_set("memory_limit", "512M"); /var/www/foobar/bitrix/modules/main/classes/general/file.php: $memoryLimit = CUtil::Unformat(ini_get('memory_limit')); /var/www/foobar/bitrix/modules/main/classes/general/site_checker.php: array('check_memory_limit' => GetMessage('SC_T_MEMORY')), /var/www/foobar/bitrix/modules/main/classes/general/site_checker.php: function check_memory_limit() /var/www/foobar/bitrix/modules/main/classes/general/site_checker.php: $cur = ini_get('memory_limit'); /var/www/foobar/bitrix/modules/main/install/wizard/wizard.php: $memoryLimit = WelcomeStep::unformat(ini_get('memory_limit')); /var/www/foobar/bitrix/modules/main/install/wizard/wizard.php: $memoryLimit = WelcomeStep::unformat(get_cfg_var('memory_limit')); /var/www/foobar/bitrix/modules/main/install/wizard/wizard.php: @ini_set("memory_limit", "64M"); /var/www/foobar/bitrix/modules/main/install/wizard/wizard.php: $memoryLimit = WelcomeStep::unformat(ini_get('memory_limit')); /var/www/foobar/bitrix/modules/main/install/wizard/wizard.php: '.($memoryLimit > 0 && $memoryLimit < $this->memoryMin*1048576 ? $this->ShowResult(ini_get('memory_limit'), "ERROR") : $this->ShowResult(ini_get('memory_limit'), "OK")).' /var/www/foobar/bitrix/modules/main/install/wizard/wizard.php: $fileContent .= "\n@ini_set(\"memory_limit\", \"1024M\");\n"; /var/www/foobar/bitrix/modules/main/install/wizard/wizard.php: $memoryLimit = WelcomeStep::unformat(ini_get('memory_limit')); /var/www/foobar/bitrix/modules/main/install/wizard/wizard.php: $memoryLimit = WelcomeStep::unformat(get_cfg_var('memory_limit')); /var/www/foobar/bitrix/modules/main/install/wizard/wizard.php: @ini_set("memory_limit", "512M"); /var/www/foobar/bitrix/modules/main/install/wizard/wizard.php: $memoryLimit = WelcomeStep::unformat(ini_get('memory_limit')); /var/www/foobar/bitrix/modules/main/install/wizard/wizard.php: $fileContent .= "\n@ini_set(\"memory_limit\", \"512M\");\n"; /var/www/foobar/bitrix/modules/main/lang/en/admin/site_checker.php:PHP defines the memory limit in php.ini by setting the memory_limit parameter. However, this may be overridden on shared hostings. You should not trust this parameter. /var/www/foobar/bitrix/modules/main/lang/en/admin/site_checker.php:The test attempts to increase the value of memory_limit using the code: /var/www/foobar/bitrix/modules/main/lang/en/admin/site_checker.php:ini_set("memory_limit", "512M") /var/www/foobar/bitrix/modules/main/lang/en/admin/site_checker.php:$MESS["SC_MEMORY_CHANGED"] = "The value of memory_limit was increased from #VAL0# to #VAL1# using ini_set while testing."; /var/www/foobar/bitrix/modules/main/lang/ru/admin/site_checker.php:$MESS["SC_MEMORY_CHANGED"] = "Значение memory_limit было увеличено с #VAL0# до #VAL1# на момент тестирования через ini_set."; /var/www/foobar/bitrix/modules/main/lang/ru/admin/site_checker.php:Основной параметр ограничения памяти в php.ini - это memory_limit. Но доверять значению параметра нельзя, т.к. на хостингах могут быть установлены дополнительные ограничения памяти. /var/www/foobar/bitrix/modules/main/lang/ru/admin/site_checker.php:Обратите внимание, тест пытается увеличить значение memory_limit используя код: /var/www/foobar/bitrix/modules/main/lang/ru/admin/site_checker.php:ini_set("memory_limit", "512M") /var/www/foobar/bitrix/php_interface/dbconn.php:@ini_set("memory_limit", "128M"); /var/www/foobar/cli/parse_list.php:ini_set('memory_limit', '2048M'); /var/www/foobar/local/php_interface/dbconn.example.php:@ini_set("memory_limit", "128M"); Вот почему у меня парсер в админке не работал. Из-за 128M memory_limit. Даже не знаю какой мемчик бы подошёл для этой ситуации лучше - Друзь с его вы там ох!@#$% или Винни Пух ныряющий в болото. Битрикс💩, а Wordpress, Joomla, Drupal по сравнению с этим платным💩 просто топчик. ===== DB query error. Please try later ===== В файле ''/bitrix/php_interface/dbconn.php'' установить $DBDebug = true; Обновляем страницу сайта, чтобы увидеть в чем проблема. {{:web:bitrix_db_query_error.png?nolink&700|}} ===== The script encountered an error ===== The script encountered an error and will be aborted. To view extended error messages, enable this feature in .settings.php. Установить **'debug' => true** в ''bitrix/.settings.php'' (в старых версиях ''bitrix/php_interface/dbconn.php'').