Drupal

提供: ArchWiki
移動先: 案内検索

Wikipedia より:

Drupal は PHP で書かれたフリーのオープンソースコンテンツ管理システム (CMS) とコンテンツ管理フレームワーク (CMF) であり GNU General Public License で配布されている。

この記事では Drupal をセットアップして Apache, MySQL または PostgreSQL, PHP, Postfix を設定する方法を解説します。LAMP (Linux, Apache, MySQL, PHP) もしくは LAPP (Linux, Apache, PostgreSQL, PHP) または LASP (Linux, Apache, SQLite, PHP) サーバーが既にセットアップされていることが前提です。

インストール

drupal パッケージをインストールしてください。

設定

PHP

/etc/php/php.ini を編集してください:

  • 画像操作のサポートを有効にするために extension=gd.so 行をアンコメントしてください。

データベースのサポートを有効にするために、使用しているデータベースの PDO 拡張を有効にしてください:

  • SQLite のサポートを有効にするには extension=pdo_sqlite.so 行をアンコメントしてください。
  • MySQL のサポートを有効にするには extension=pdo_mysql.so 行をアンコメントしてください。
  • PostgreSQL のサポートを有効にするには extension=pdo_pgsql.so 行をアンコメントしてください。

Apache

Apache のサンプル設定ファイルをコピーしてください:

# cp /etc/webapps/drupal/apache.example.conf /etc/httpd/conf/extra/drupal.conf

そして /etc/httpd/conf/httpd.conf の末尾でファイルをインクルードしてください:

Include conf/extra/drupal.conf

/etc/httpd/conf/httpd.conf の中の LoadModule rewrite_module modules/mod_rewrite.so 行をアンコメントしてください。

Drupal

/usr/share/webapps/drupal/.htaccess を編集して Require all deniedRequire all granted に置き換えてください。

最後に、Apache を再起動してください (httpd.service)。http://localhost/drupal から Drupal を開くことができます。

コマンドラインツール

Drush

Drush は Drupal のコマンドラインシェルであり Unix スクリプトインターフェイスです。Drush にはモジュール・テーマ・プロフィールなどを操作するための便利なコマンドが多数含まれています。また、update.php を実行したり、SQL クエリや DB の以降を行ったり、cron を実行したりキャッシュを削除するユーティリティも存在します。Drush はサードパーティ製のコマンドファイルで拡張することができます。drushAUR パッケージでインストールすることが可能です。

Drupalconsole

Drupalconsole はボイラープレートコードを生成したり、Drupal 8 を操作・デバッグするための CLI ツールです。drupalconsoleAUR パッケージでインストールすることができます。

PHP-Codesniffer-Drupal

PHP-Codesniffer-Drupal は Drupal のコードがコーディング基準やベストプラクティスに沿っているかチェックします。php-codesniffer-drupalAUR パッケージでインストールできます。

ヒントとテクニック

メールの送信

ローカル環境からメールを送信する場合 Drupal は Sendmail, Postfix, Exim などの Sendmail 互換の MTA を必要とします。SMTPPHPMailer などを使って外部のメールサーバーからメールを送信する方法もあります。詳しくは 検索ページ を使ってください。

Cron によるスケジューリング

Drupal は1時間ごとに cron ジョブを実行することを推奨しています。http://localhost/drupal/cron を開いてブラウザから Cron を実行できます。適切なファイルを "scripts" フォルダから /etc/cron.hourly にコピーして実行可能属性を付与することで、スクリプトから cron を実行することも可能です。

アップロードプログレスが有効にならない

ステータスレポートで以下のようなメッセージが表示される場合:

Your server is capable of displaying file upload progress, but does not have the required libraries. It is recommended to install the PECL uploadprogress library (preferred) or to install APC.

まず php-pearAUR パッケージをインストールしてください。そして、pecl コマンドを使ってバイナリを自動的にダウンロード・コンパイル・インストールします:

# pecl install uploadprogress

最後に /etc/php/php.ini に以下を追加してください:

extension=uploadprogress.so

その後 Apache を再起動してください。

参照