IBMのSoftLayerで最新のDrupal 8を試してみよう!

2014年12月15日(月)
小薗井 康志

[PR]

Drupalとは?

Drupalは一般的にはオープンソースのCMS(コンテンツマネージメントシステム、Webサイトのコンテンツを製作・管理するソフトウェア)の一つとされています。しかしながら実際の機能はコンテンツの管理のみにとどまらず、モジュールと呼ばれる追加機能を加えることによって様々なWeb上のサービスを実現することができるため“ウェブアプリケーションフレームワーク”と呼ばれることもあります。実際欧米を中心に個人のブログサイトから大企業の公式サイトまで多くのサイトで使われており、特に米国ではホワイトハウスをはじめ、ジョンソン&ジョンソン、ファイザーなど、政府から大企業、エンターテイメント、アーチストと本当に幅広く使われています。Drupalは2001年にベルギー人のDriesによってプロジェクトがスタートしました。現在は世界各国のコミュニティによって開発が進められており、年に2度アメリカとヨーロッパで行われるDrupalConという国際会議では数千の開発者、ユーザーでとてもにぎわっております。

Drupalコアとモジュール(Module)およびテーマ(Theme)

CMSとしての基本的な機能を備えたコアと、どのサイトでも使われるようなモジュール、テーマ(デザイン)を追加したものをDrupalコアと読んでおります。実際のサイトではこのコアに追加して更に機能を拡張できるコントリビュートモジュールと呼ばれるものが世界中の開発者によって作られております。またサイトの見た目を変えることができるテーマも世界中のデザイナーによって作られており、様々なデザインのWebサイトを簡単につくることができます。

Drupal 8

2014年12月現在Drupalの最新バージョン7.34です。そして次のメジャーバージョンアップは近々正式リリースが予定されているバージョン8です。Drupal 7がリリースされたのが2011年1月なので久しぶりのバージョンアップです。このDrupal 8にはさまざまな新しい機能が入っています。いくつかあげると

  • モバイルファースト- すべてのデザインがResponsive対応です。管理画面もモバイル対応です。
  • 多言語対応- 多言語対応サイトが簡単に作れます。
  • REST対応- ウェブサービスを提供することもできます。などなど

最新の機能が追加され更に強力なウェブアプリケーションプラットフォームになっています。 

SoftlayerでDrupal 8を

Drupal 8では最新版ということもありPHPのバージョン5.4が必要などシステムに要求されるスペックもあがっています。共有型ホスティングサーバーなどではここを満たしていない場合も考えられます。ここは期間を決めて検証ができるIaaSのクラウドサービスを選ぶのが無難でしょう。

Drupal 8をSoftLayerで

それではさっそくSoftLayer上に環境を構築し、Drupalをインストールしていきましょう。

まず手順をご紹介します。

  1. サーバーのオーダー
  2. 環境設定(PHP5の追加、データベース設定、クリーンURLのための設定)
  3. Drupalのダウンロード、インストール前の設定
  4. Drupalをインストール

1. サーバーのオーダー、SSHでの接続確認

SoftLayerのポータルサイトに行き、Order Deviceでサーバーをオーダーします。なお、今回はHongKongのデータセンターを選択、以下の構成でオーダーしました。

COMPUTING INSTANCE 1x2.0GHz Core
RAM 1GB
OS Ubuntu Linux 12.04 LTS Precise Pangolin – LAMP install(32bit)
FIRST DISK 25GB(SAM)
HARDWARE & SOFTWARE FIREWALLS APF Software Firewall for Linux

2. 環境設定

今回のDrupalインストールではファイアウォールなどの一般的な設定は省略させていただきます。しかしながら安全なウェブサイト運営のためにファイアウォールの設定はお忘れなく。またメールサーバーをインストール設定しておけばシステムからのメッセージをご自分のメールに送信できます。こちらもお忘れなく。

PHPの設定

今回のサーバーではOSとしてLAMPをインストール済みのUbuntuを指定しました。ですからPHPは入っているのですが、PDOなどの拡張が入っていないためそのインストールが必要です。またDrupalのバージョン8ではPHPのバージョン5.4以上が必要となっています。なので今回PHPは最新のものにします。

add-apt-repositoryのインストール

# apt-get install python-software-properties

レポジトリの追加

# add-apt-repository ppa:ondrej/php5

追加したレポジトリの更新

# apt-get update

PHP5 および拡張機能のインストール

# apt-get install php5 libapache2-mod-php5 php5-mysql

データベースの設定

ここではデータベースのユーザーを追加し、そのユーザーの権限で一つデータベースを作成します。以下のコマンドを参考にしてください。

mysqlへのログイン、rootのパスワードは設定されていません

# mysql –u root –p

rootのパスワードは設定されていないので、「>Enter Password」と表示されたらEnterキーを押してください。

データベースの作成, drupal_8というデータベースを追加します

mysql> CREATE DATABASE drupal_8 CHARACTER SET utf8;

ユーザーの追加、Drupal_8にアクセスできるdrupal_userというユーザーを追加します

mysql> GRANT ALL PRIVILEGES ON drupal_8.* TO 'drupal_user'@'%' IDENTIFIED BY '********';
mysql>GRANT ALL PRIVILEGES ON drupal_8.* TO 'drupal_user'@'localhost' IDENTIFIED BY '********';

※ ******** には任意のパスワードを入力してください。

クリーンURLのための設定

Drupalをインストールした後のデフォルトの状態でコンテンツを追加すると "http://www.example.com/?q=node/83" というようにURLには「?q=」という文字列が入ります。クリーンURLという機能を使用することにより、この「?q=」という文字列を取り除き "http://www.example.com/node/83" のようにすっきりしたURLにすることが可能です。

まずは下記コマンドを入力してください。

#a2enmod rewrite

次に /etc/apache2/apache2.conf の中の以下を変更してください。

<directory var="" www="">
Options Indexes FollowSymLinks
AllowOverride None      //左のNoneをAllに変更してください
Require all granted
</directory>

Apache2 ウェブサーバーを再起動してください

#service apache2 restart

半導体(インテル)の技術者から経営者、サーバーベンダー(Dell)の技術者を経て現在日本アイ・ビー・エム株式会社でIT Specialistとして働いております。クラウド上で様々な面白いアプリケーションを多くの人が開発できるようにSoftLayerを中心にIBMのクラウド製品をサポートしております。個人的にはDrupalに注目。2014年9月にDrupal Business Consortium Japan を設立。現在理事長

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています