Мы — долго запрягаем, быстро ездим, и сильно тормозим.
www.lissyara.su —> статьи —> FreeBSD —> WWW —> CMS Drupal 6.9

Установка CMS Drupal 6.9 с БД на MySQL 5.0

Автор: Smartpol.


Итак, приступим:

Установка Apache:

# cd /usr/ports/www/apache2 && make install clean
# echo 'apache2_enable="YES"' >> /etc/rc.conf

Установка PHP:

# cd /usr/ports/lang/php5 && make install clean

В появившемся диалоге ставим галочку напротив Build Apache module, остальное без изменений.

Чтобы Apache понимал .php-файлы, добавляем в конфиг Apache /usr/local/etc/apache2/httpd.conf следующие строки:

index.php

в раздел DirectoryIndex и


AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

в раздел mime_module.

По установке Apache 2.0 и PHP здесь на сайте есть хорошая статья.

Установка MySQL:

Надо поправить /etc/make.conf для правильной установки MySQL, добавив следующее:
(Подробно комментировать не буду, так как про это тоже есть статья на сайте.)


DEFAULT_MYSQL_VER=50
PORTSDIR?=      /usr/ports
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql50-server
WITH_CHARSET=utf8
WITH_COLLATION=cp1251_bin
WITH_LINUXTHREADS=yes
BUILD_OPTIMIZED=yes
BUILD_STATIC=yes
.endif
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql50-client
WITH_CHARSET=cp1251
WITH_COLLATION=cp1251_bin
BUILD_OPTIMIZED=yes
.endif

Можно использовать и UTF-8 для мускуля - есть отзывы, что и с этой кодировкой все прекрасно работает.

Далее:

# cd /usr/ports/databases/mysql50-server
# make install clean
# echo 'mysql_enable="YES"' >> /etc/rc.conf

Также необходимо скопировать соответствующий вашей планируемой нагрузке на сервер
файл конфигурации мускуля (у меня нагрузка будет небольшая, поэтому копирую my-small.cnf):

# cp /usr/local/share/mysql/my-small.cnf /usr/local/etc/my.cnf

Если не планируется сетевое использование мускуля, можно в файле конфигурации раскомментировать строчку skip networking.

Далее либо перезагружаем сервер, либо вручную запускаем мускуль:

# /usr/local/etc/rc.d/mysql-server start

Для пущей секурности можно сменить пароль рута в мускуле (по умолчанию он пустой):

# mysqladmin -u root password вашпарольмускула

После установки создаем базу для drupal и пользователя для работы с этой базой:

# mysql -pвашпарольмускула
mysql> create database drupal;

, где drupal - имя базы для друпал
mysql> show databases;

- для просмотра списка БД
mysql> grant all on drupal.* to 'drupal'@'localhost' identified by 'пароль';

,где drupal@localhost - пользователь БД друпал
mysql>\q

- для выхода из консоли мускуля

Установка Drupal:

# cd /usr/ports/www/drupal6 && make install clean

В появившемся диалоге надо поставить галочку на MySQL и снять все остальное.
При установке Drupal попутно ставятся необходимые модули PHP (php5-extensions) и MySQL-client, а также еще куча всего, но все конфиги портов, которые ставятся при установке Drupal, я оставлял по умолчанию.

Прописываем Drupal в httpd.conf в секцию alias_module:


Alias /drupal "/usr/local/www/drupal6/"
<Directory "/usr/local/www/drupal6">
Options Indexes FollowSymlinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>

Для того, чтобы при настройке Drupal можно было включить поддержку ЧПУ, надо в файле /usr/local/www/drupal6/.htaccess раскомментировать строку

RewriteBase /drupal , где drupal - это название алиаса в httpd.conf

Создаём файл настроек для Drupal с соответствующими правами доступа из дефолтного:

# cd /usr/local/www/drupal6/sites/default
# cp default.settings.php settings.php
# chown www:www settings.php

Можно сразу скачать русскую локализацию (http://ftp.drupal.org/files/projects/ru-6.x-1.1.tar.gz) и, полностью ее распаковав, скопировать файлы и директории
в директорию установленного друпал (/usr/local/www/drupal6). В результате при установке можно будет выбрать русский язык.
Дальнейшая установка выполняется уже с веб-морды Drupal (http://www.вашсайт.ru/алиасDrupal) Там необходимо ответить на несколько простых вопросов:
настройки подключении к БД MySQL, логин и пароль администратора сайта.
При коннекте к базе MySQL в качестве пользователя нужно указать просто drupal

Для запуска заданий планировщика Drupal можно использовать разные пути, мне показалось удобнее использовать wget и cron:

# cd /usr/ports/ftp/wget && make install clean
# crontab -u root -e

Далее добавляем строчку:

30 * * * * /usr/local/bin/wget -O - -q http://www.вашсайт.ru/алиасDrupal/cron.php

для запуска автозадач drupal каждые 30 минут.

Для резервного копирования БД и файлов сайта можно использовать первую бету второй версии модуля DB Maintenance
(http://ftp.drupal.org/files/projects/db_maintenance-6.x-2.0-beta1.tar.gz) - несмотря на статус беты, она вполне работоспособна.

В конце приведу несколько полезных ссылок по Drupal:

www.drupal.org
www.drupal.ru
www.drupalcookbook.ru
www.idrupal.ru
www.drupaldance.com
www.drupal.by
www.drupal.bz - на этом сайте есть электронная версия книги по Drupal на русском языке - она еще сырая и автор просил на давать на нее прямой линк - но в ней хорошо и по пунктам описан процесс обновления Drupal.

Также на формуме обсуждения данной статьи есть список модулей, предоставленный Raven2000, проверенных в работе.



размещено: 2009-02-18,
последнее обновление: 2009-02-19,
автор: Smartpol


Гость, 2009-04-16 в 10:12:27

А вы знаете о том, что если начать устанавливать один порт (например друпал), то он подтянет за собой зависимости... такие как апачь, пхп и майэскуэль?

Smartpol, 2009-04-17 в 9:12:01

Данная особенность системы портов FreeBSD мне прекрасно известна, я просто привык ставить именно таким способом, так как у меня обычно апач, пхп и мускул обслуживают не только друпал.

reader, 2009-09-08 в 0:50:42

а только у меня с линукс-тредами мускул не хочет билдится??

ttys, 2010-11-26 в 15:59:00

фря 8,1
удалил WITH_LINUXTHREADS=yes
и всё стало =)

ttys, 2012-11-10 в 19:47:40

мона ещё делать как полный "вася" pkg_add ...
;)

Гость, 2013-04-26 в 14:40:38

А ещё можно не быть кретином, и не ставить движки сайтов из портов.



 

  Этот информационный блок появился по той простой причине, что многие считают нормальным, брать чужую информацию не уведомляя автора (что не так страшно), и не оставляя линк на оригинал и автора — что более существенно. Я не против распространения информации — только за. Только условие простое — извольте подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой, незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
  Если соизволите поставить автора в известность — то вообще почёт вам и уважение.

© lissyara 2006-10-24 08:47 MSK

Время генерации страницы 0.0408 секунд
Из них PHP: 22%; SQL: 78%; Число SQL-запросов: 77 шт.
Исходный размер: 24392; Сжатая: 6832