Drupal
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) サーバーが既にセットアップされていることが前提です。
目次
インストール
設定
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 denied
を Require 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 を必要とします。SMTP や PHPMailer などを使って外部のメールサーバーからメールを送信する方法もあります。詳しくは 検索ページ を使ってください。
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 を再起動してください。