Показать страницуИстория страницыСсылки сюдаCopy this pageExport to MarkdownODT преобразованиеНаверх Вы загрузили старую версию документа! Сохранив её, вы создадите новую текущую версию с этим содержимым. Медиафайлы{{tag>drupal}} ====== Postrge SQL разница версий ====== Drupal + PostgreSQL = белый экран смерти ===== Подстава со стороны PostgreSQL в следующем. ===== Для хранения временных данных Drupal использует таблицы в наименованиях которых содержится название "cache". Для этих таблиц поле data имеет тип данных "bytea". А в версии 9 данный формат имеет отличное представление от версии 8. И получается интересная картина. Drupal первый раз загружается, данные заносятся в таблицы кеширования, естественно они на выходе ломаются и мы наблюдаем белый экран. Данная проблема решается довольно просто. Простым хаком include файла "database.pgsql.inc". Находим строку pg_query($connection, "set client_encoding="UTF8"'); и сразу после нее добавляем pg_query($connection, 'set bytea_output = escape");, для определения формата данных на выходе для этого типа данных. **Решение:** <code php> $connection = @pg_connect($conn_string); ... pg_query($connection, "set client_encoding=\"UTF8\""); pg_query($connection, "set bytea_output = escape"); </code> СохранитьПросмотрРазличияОтменить Сводка изменений Примечание: редактируя эту страницу, вы соглашаетесь на использование своего вклада на условиях следующей лицензии: CC0 1.0 Universal