Drupal и проблема с оптимизацией CSS

посмотреть

При некоторых конфигурациях сервера включение оптимизации css в drupal приводит в печальным последствиям. Случай не редкий, но сложновоспроизводимый и по этой причине до сих пор толком не изученный. Я и вовсе умудрился попасть в весьма щекотливую ситуацию: каким-то образом оптимизация css работала на одном из сайтов, а после сохранения настроек я получил все 500. Во всех бэкапах оптимизация css включена, а значит восстановление оного не поможет.

Но к счастью существует достаточно простой способ вернуть всё на место. Нужен лишь доступ к базе. Находим таблицу variable и открываем окошко sql запроса. Пишем:

select * from variable where name='preprocess_css'

Меняем значение в поле value на s:1:"0";

Вызываем cron.php напрямую. Можно отключить сжатие js, просто меняем значение переменной preprocess_js

Радуемся:)

ПОЛНОЕ РЕШЕНИЕ!!! Урра! Недавно снова вернулся к этому вопросу (сайты заметно медленно грузятся). На одном хорошем рускоязычном форуме по друпалу, человек оказался в схожем положении и ему там дали ссылку на обсуждение этого бага на официальном сайте drupal. Тема обсуждения достаточно длинна и версий исправлений предостаточно. Лучшее решение ищите в ближе к концу топика (собственно ссылка на комент с решением). Выложенный патч подходит для версии drupal по меньшей мере 6.15 (проверял). У меня также есть сайты на 6.9 для них пришлось пропатчить вручную. Если нужно, могу сделать патч и выложить. Суть проблемы в regex выражении приводящем к переполению стека при наличии длинных комментариев в тексте css файла. Надеюсь патч войдет в новые версии Drupal и более никого беспокоить не будет. Патч и итоговый файл для 6.9 и 6.15 прилагаю.

Прикрепленный файлРазмер
common.inc-161-d6_0.patch (патч)2.8 кб
common.inc_.zip (drupal 6.9)36.96 кб
common-6.15.inc_.zip (drupal 6.15)37.66 кб
вернуться назад