LoginSignup
15
10

More than 5 years have passed since last update.

CentOS 7 に nginx と Drupal 8 をインストールする (さくらのクラウド編)

Last updated at Posted at 2015-08-02

Drupal8ですが、そろそろRC1が出そうですし、aquiaのサービスが始まりました。そろそろ良いじゃないですかね?ということで本番機の練習用にさくらのクラウドにインストールしてみることにしました。
(本番機は、さくらのVPSです)

さくらのクラウドのスペックを決める

練習なんで安いものにしてみます。以下のスペックにしてみました。
利用料は、日割り119円、月額2,386円 になります。
作成を指示してOSのインストール込みで4分半くらいで完了しました。

項目 設定値
ゾーン 石狩第1ゾーン
CPUコア数 1
メモリ 1GB
ストレージ 標準ディスク 40GB
OS CentOS 7.0 64bit (基本セット)

php 5.6 のインストール

remi リポジトリの追加と php のインストール

remi リポジトリを使ってインストールします。apacheも同時にインストールされてしまいますが、気にせず進めます。

# yum -y install http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
# yum -y install --enablerepo=remi,remi-php56 php php-devel php-mbstring php-mcrypt php-mysqlnd php-pecl-xdebug php-pecl-xhprof php-gd php-fpm php-twig-ctwig
# php -v
PHP 5.6.11 (cli) (built: Jul 12 2015 20:13:00) 
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies

MariaDB 10 のインストール

次に MariaDB 10 をインストールします。

まず公式のリポジトリが用意してあるので追加する作業をします。
以下のURLにアクセスして設定情報を確認します。
https://downloads.mariadb.org/mariadb/repositories/

CentOS => CentOS 7 (64bit) => 10.0 と選択します。
画面下部に公式リポジトリの情報が表示されるはずです。

スクリーンショット 2015-08-01 17.38.05.png

指示に従ってファイルを作成します。

/etc/yum.repos.d/MariaDB.repo
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.0/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

インストールします。

# yum -y install MariaDB-devel MariaDB-client MariaDB-server

設定の変更

文字コードなどを修正します。

/etc/my.cnf.d/server.cnf
[mysqld]
character-set-server=utf8
log-bin=mysql-bin
expire_logs_days=30

自動起動とし、MariaDB を起動します。

# service start mysql
Starting MySQL. SUCCESS! 
# systemctl enable mysql.service

mysql_secure_installation を起動して、アレコレ設定しておきます。

# mysql_secure_installation

Nginxのインストール

パッケージリポジトリを追加します。
/etc/yum.repos.d/nginx.repo を作成します。

/etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=0
enabled=0

yum コマンドでインストールします。

# yum -y --enablerepo=nginx install nginx
# systemctl start nginx
# systemctl enable nginx

ブラウザでアクセスをして nginx の画面が表示されるかを確認します。

スクリーンショット 2015-07-31 17.14.10.png

php-fpm の設定

設定の変更

php-fpm の設定を変更します。userとgroupの設定値をapacheからnginxに変更します。

/etc/php-fpm.d/www.conf
user = nginx
group = nginx

さらに listen 、listen.owner 、listen.group を変更します。

/etc/php-fpm.d/www.conf
listen = /var/run/php-fpm/php-fpm.sock
listen.owner = nginx
listen.group = nginx

続いてサービス化して起動をします。

# systemctl start php-fpm.service
# systemctl enable php-fpm.service

nginxの設定変更

nginxの設定を変更します。
8から10行目をコメントアウトし、以下のものにします。

/etc/nginx/conf.d/default.conf
    location ~ \.php$ {
        root   /usr/share/nginx/html;
        fastcgi_pass   unix:/var/run/php-fpm/php-fpm.sock;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root/$fastcgi_script_name;
        include        fastcgi_params;
    }

いったんnginxを再起動してます。

# systemctl restart nginx.service

テスト用スクリプトの作成と確認

いつものphpテストスクリプトを作成します。

/usr/share/nginx/html/test.php
<?php phpinfo(); ?>

ブラウザで http://(サーバのアドレス)/test.php にアクセスすると、いつものアレが表示されるかと思います。

スクリーンショット 2015-08-02 10.52.10.png

Druapl のインストール

データベースの準備

d8 というデータベースを作成します。またdrupal8というユーザを作成します。パスワードは、qiitaa にしてアクセスできるようにします。

# mysql -u root -p
create database d8;
grant all privileges on d8.* to 'drupal8'@'localhost' identified by 'qiitaa';
exit

php.ini の編集

そのままだとソケットの位置の記載がないので、/var/lib/mysql/mysql.sock を設定します。

# grep -n "\.default_socket\s*=$" /etc/php.ini
969:pdo_mysql.default_socket=
1108:mysql.default_socket =
1167:mysqli.default_socket =
# vi /etc/php.ini
# grep -n "\.default_socket\s*=" /etc/php.ini
969:pdo_mysql.default_socket=/var/lib/mysql/mysql.sock
1108:mysql.default_socket = /var/lib/mysql/mysql.sock
1167:mysqli.default_socket = /var/lib/mysql/mysql.sock

drupal 8 のダウンロード

この投稿を書いているときの最新は、beta 13 なんでダウンロードします。

ダウンロードページ にアクセスします。
以下の画面サンプルの赤枠にあるリンク(drupal-8.0.0-beta13.tar.gz)のアドレスをコピーします。

スクリーンショット 2015-08-02 11.01.19.png

シェルに戻りダウンロードします。

# cd /usr/share/nginx/
# curl -O http://ftp.drupal.org/files/projects/drupal-8.0.0-beta13.tar.gz
# tar zxvf drupal-8.0.0-beta13.tar.gz
# ln -s drupal-8.0.0-beta13 drupal
# chown -R nginx:nginx drupal-8.0.0-beta13 drupal

nginxの設定を再度変更します。変更後は以下のようになります。

/etc/nginx/conf.d/default.conf
server {
    listen       80;
    server_name  localhost;
    root /usr/share/nginx/drupal;
    index index.php index.html index.htm;
    location / {
      try_files $uri $uri/ /index.php?q=$uri&$args;
    }

    error_page  404              /404.html;
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    location ~ \.php$ {
        root   /usr/share/nginx/drupal;
        fastcgi_pass   unix:/var/run/php-fpm/php-fpm.sock;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root/$fastcgi_script_name;
        include        fastcgi_params;
    }
}

nginx を再起動します。

# systemctl restart  nginx.service

ブラウザでアクセスするとdrupalの言語選択画面が表示されればOKです。

スクリーンショット 2015-08-02 12.53.24.png

言語が日本語になっているのを確認して、「Save and continue」をクリックします。

スクリーンショット 2015-08-02 12.54.43.png

「標準」が選択されているのを確認して「保存して次へ」をクリックします。

スクリーンショット 2015-08-02 12.59.16.png

以下のように入力し、「保存して次へ」をクリックします。

項目 設定値
データベース d8
データベースのユーザー名 drupal8
データベースのパスワード qiitaa

スクリーンショット 2015-08-02 14.19.41.png

データベースに接続が出来るとインストールが開始されます。

あとは、サイトの環境設定 を設定して終了です。問題なければ、トップ画面に遷移します。

スクリーンショット 2015-08-02 14.51.34.png

15
10
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
10