Drupal

Материал из RSU WiKi
Перейти к: навигация, поиск
Pen.pngЭта статья находится в процессе написания.
Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.
Tower of babel.png外國 language!
В статье используется несколько языков. Необходимо использовать один. Совсем неплохо, если это будет русский.

Drupal (друпал) — система управления сайтом (CMS), написанная на языке PHP и использующая в качестве хранилища данных реляционную базу данных (поддерживаются MySQL, PostgreSQL и другие). Drupal является свободным программным обеспечением, защищённым лицензией GPL, и развивается усилиями энтузиастов со всего мира.

Содержание

Работа с БД

MyISAM vs. InnoDB

В общем случае использование InnoDB выгоднее там, где происходит интенсивное обновление таблиц. Найдите как в вашем инструменте для работы с БД смотреть статистику блокировок таблиц. В mysql это можно сделать следующей командой

SHOW STATUS LIKE 'Table%'

в выводе вы увидите Table_locks_immediate - в скольких случаях блокировка была получена немедленно и Table_locks_waited - когда сервер ожидал прежде чем выдать блокировку. где то ходил скрипт, который для тех кто не хочет вникать в детали - подсказывал стоит или не стоит думать о смене типа. кажется tune_mysql назывался или как то так. В наших проектах мы ВСЕГДА ставим innodDb на таблицы sessions и watchdog при активном комьюнити еще и на users и если вы используете друпал-модули статистики то и на их таблицы так же. В остальных случаях, мы собираем статистику обновлений БД и уже принимаем решение. Часто, comments, node, term_node постигает та же участь [1].

ALTER TABLE sessions ENGINE=InnoDb;
ALTER TABLE watchdog ENGINE=InnoDb;
ALTER TABLE captcha_sessions ENGINE=InnoDb;
ALTER TABLE accesslog ENGINE=InnoDb;

Смена доменного имени

  1. Edit the settings.php file to reflect the new server settings [2]: sites/default/setting.php.

Find the text starting with: $base_url = ‘http://
and edit it so the new domain is used.

  1. Change the site information in the admin section.
  2. When you build a site, make all internal links relative to the root directory (i.e. independent of domain name).
sed 's/dev\.example\.com/www.example.com/gi' dev-dump.sql > prod-dump.sql

После переноса обязательно очищаем кеш в MySQL:

TRUNCATE  `cache` ;
TRUNCATE  `cache_block` ;
TRUNCATE  `cache_content` ;
TRUNCATE  `cache_filter` ;

Оптимизация

Настраиваем nginx для Drupal

Примечания

  1. Drupal в рунете: InnoDB для таблиц вместо myISAM
  2. Domain name change - Checklist!

См. также

Ссылки

Личные инструменты
Пространства имён

Варианты
Действия
Навигация
Инструменты