VirtualBoxにCentOSをインストールしてWebサーバー構築3 – 必要なソフトをインストール

前回まででVirtualBox側の設定が一部を除いてほぼ完了しました。

今回はCentOS7へのWebサーバー構築について書きます。

ほとんどが端末からのコマンド実行になります。

1) ApacheおよびPHPインストールしApache起動

まず管理者になり、yumでApacheとPHPをインストールします。

sudo su
yum -y install httpd
yum -y install php php-mbstring

私の場合はインストールができていることを確認するために、ここで起動しました。

systemctl start httpd

この時点でブラウザのURL欄に「localhost」を入力することでApacheの画面が表示されます。

CentOS7に構築したApacheのブラウザ初期画面

CentOS7に構築したApacheのブラウザ初期画面

さらにここでOS起動時に自動起動できるように設定しておきました。

systemctl enable httpd

あと、後々Apacheの設定ファイル「httpd.conf」を編集することになりますが、私は念のため元のhttpd.confをコピーして保存しておきました。場所は「/etc/httpd/conf/」です。

cd /etc/httpd/conf/
cp httpd.conf httpd.conf.orig

2) MySQLをインストール

MySQLをインストールします。CentOS7には標準でMariaDBというMySQL互換のデータベースがインストールされています。これがあるとMySQLがインストールできないので、一旦削除します。

yum -y remove mariadb-libs

削除できたらMySQLをインストールします。まずMySQL公式リポジトリを追加してからインストールを行います。

yum -y localinstall http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
yum -y install mysql-community-server

インストールが完了したら、MySQLを起動し、Apacheと同様にOS起動時に自動起動できるようにします。

systemctl start mysqld.service
systemctl enable mysqld.service

このままではMySQLにログインできません。というのはrootの初期パスワードがログファイルに記述されており、まだ確認していないからです。。ログファイルは「/var/log/mysqld.log」なので、そのファイルの中身を表示し、6行目付近にあるパスワードを確認しておきます。以下のコマンドで表示される行の最後にある12個の英数字と記号です。

cat /var/log/mysqld.log | grep password

パスワードを保存したら、MySQLにrootでログインしてパスワードを変更します。この時にMySQLのパスワードのポリシーにより、短くてシンプルなものを設定しようとするとエラーになります。今回はローカルでの開発環境目的ということで短くてシンプルなパスワードに設定できるようにしました。

mysql -u root -p
SET GLOBAL validate_password_length=6;
SET GLOBAL validate_password_policy=LOW;
ALTER USER root@localhost IDENTIFIED BY 'パスワード';

3) PostgreSQLをインストール

PostgreSQLをインストールします。手順としてはMySQLとほぼ同様です。yumでインストール→DB初期化→起動→rootのパスワード設定の手順で行います。

yum -y install postgresql-server
postgresql-setup initdb
systemctl start postgresql
systemctl enable postgresql
su - postgres
psql -c "ALTER USER postgres WITH PASSWORD 'パスワード'"
exit

4) PHPを5.6にアップデート

CentOS7の標準状態で、PHPをyumでインストールしようとするとPHPのバージョンが5.4になります。

このままでも使える状態ではありますが、5.4(および5.5)はサポートが終了しているので、5.6にアップデートします。

リポジトリを2つ追加し、リポジトリ指定でPHPをインストールします。PHPのライブラリについては必要なものを適切に選択します。

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
yum -y install --enablerepo=remi,remi-php56 php php-devel php-mbstring php-pdo php-gd

しばらく待って完了したらPHPのバージョンを確認してみます。

php -v

これで「PHP 5.6.30」(バージョンは2017年2月3日時点)と表示されていたので、PHPアップデートが問題なく完了したことが判りました。

あとはApache再起動すればそちらにも反映されます。

systemctl restart httpd

次回は仕上げ

CentOS7へのWebサーバーにおいての最も重要な部分を書いてみました。

これでVirtualBoxの中でのみではありますが、Webサーバーとして動作するようになりました。

ただこれではおそらく開発はしづらいと思います。

次回は仕上げです。より使いやすくするために、ホストOSからアクセスしやすいような設定について書きたいと思います。

スポンサードリンク

twitterまたはFacebookでもコメントして頂けます