さくらVPSでCentOS7 ４．Apache・PHPインストール

#はじめに

自由にテスト出来るLinuxのサーバーがほしくて、さくらVPSで構築してみました。
順次手順をアップしていく予定です。

前回、CentOS7をインストールし、鍵認証を使ってログインできるように設定しました。
ApacheとPHPをインストールします。

#目次

1. [申し込み](https://qiita.com/Qsugi/items/9239f93f35967e567b5b)
2. [CentOS7インストール](https://qiita.com/Qsugi/items/4cc4ba9983191a306b19)
3. [SSH接続](https://qiita.com/Qsugi/items/45772c8a71a31bd0d3c8)
4. Apache・PHPインストール
5. [MariaDBインストール](https://qiita.com/Qsugi/items/7798669338b555f4ea8d)
6. [FTP接続](https://qiita.com/Qsugi/items/6f383694f60913abb948)
7. [sftp接続](https://qiita.com/Qsugi/items/a8328a116218b058a8bf)
8. [phpMyAdminインストール](https://qiita.com/Qsugi/items/8b6f5b457285140b2ca2)
9. [環境のバックアップ](https://qiita.com/Qsugi/items/a83076eb657157f12f17)
10. [Ruby On Railsインストール](https://qiita.com/Qsugi/items/c7e69a6761f125846bff)
11. [RailsプロジェクトをGitで共同開発](https://qiita.com/Qsugi/items/3c31cfeffee288c05d5e)

#４．Apache・PHPインストール
[前回](https://qiita.com/Qsugi/items/45772c8a71a31bd0d3c8)作成した作業用一般ユーザーでログインして作業します。

##Apache

* インストール

    ```
$ sudo yum -y install httpd
```

* バージョン確認

    ```
$ httpd -v
Server version: Apache/2.4.6 (CentOS)
Server built:   Oct 19 2017 20:39:16
```

* 起動

    * 自動起動設定

        OS再起動時に自動的に起動するように設定します。

        ```
$ sudo systemctl enable httpd.service
```

    * 起動

        ```
$ sudo systemctl start httpd.service
```

    * ファイアウォール

        起動しているか確認します。

        ```
sudo firewall-cmd --state
running
```

        有効なプロトコルを確認

        ```
$ sudo firewall-cmd --list-services
dhcpv6-client ssh
```

        httpを有効にし、プロトコル確認

        ```
$ sudo firewall-cmd --add-service=http
success
$ sudo firewall-cmd --list-services
dhcpv6-client ssh http
```

        OSを再起動しても設定されるようにする

        ```
$ sudo firewall-cmd --add-service=http --permanent
success
```

    * 起動確認

        ブラウザを起動し、サーバーのIPアドレス又はURLを指定します。
<img src="https://qiita-image-store.s3.amazonaws.com/0/222823/be9b9d56-b553-453f-477f-12886b62a8ff.jpeg" width=600>
<br>

* ドキュメントルート

    Webコンテンツは複数のユーザが操作出来るように、グループに対して書き込み等の許可を与えるようにしておきます。

    * グループ作成

        「webadmin」というグループを作成します。

        ```
$ sudo groupadd webadmin
```

    * グループにユーザを追加

        作業用一般ユーザ「sakura」をグループに追加。

        ```
$ sudo usermod -a -G webadmin sakura
```

    * 確認

        「sakura」の所属グループを確認

        ```
$ groups sakura
sakura : sakura wheel webadmin
```

        「webadmin」グループに所属するユーザを確認

        ```
$ getent group webadmin
webadmin:x:1001:sakura
```

    * サイトディレクトリのオーナーシップを変更

        Webサイトディレクトリのオーナーをrootとwebadminに設定

        ```
$ sudo chown root:webadmin /var/www/html/
$ sudo chown root:webadmin /var/www/cgi-bin/    
```

    * サイトディレクトリのパーミッション変更

        ```
$ sudo chmod 2775 /var/www/html/ -R
$ sudo chmod 2775 /var/www/cgi-bin/ -R
```

    * 一般ユーザ「sakura」のサイトへの書き込みテスト

        グループ所属の設定を有効にするため、一度ログアウトし再接続します。

        ```
$ exit
```

        再接続後、test.html書き込み

        ```
$ echo "webadmin書き込みテスト" > /var/www/html/test.html
```

        ブラウザで確認
<img src="https://qiita-image-store.s3.amazonaws.com/0/222823/8c202af9-4614-8492-e153-35fda9c7eb0a.jpeg" WIDTH=600>


##PHPインストール

* Yumリポジトリを追加

    * EPELリポジトリ追加

        ```
$ sudo yum install epel-release
読み込んだプラグイン:fastestmirror, langpacks
base                                                     | 3.6 kB     00:00
epel/x86_64/metalink                                     | 7.5 kB     00:00
extras                                                   | 3.4 kB     00:00
mariadb-main                                             | 2.9 kB     00:00
mariadb-maxscale                                         | 2.4 kB     00:00
mariadb-tools                                            | 2.9 kB     00:00
remi-safe                                                | 2.9 kB     00:00
updates                                                  | 3.4 kB     00:00
remi-safe/primary_db                                       | 1.2 MB   00:01
Loading mirror speeds from cached hostfile
 * base: ftp.riken.jp
 * epel: mirror.dmmlabs.jp
 * extras: ftp.riken.jp
 * remi-safe: mirrors.tuna.tsinghua.edu.cn
 * updates: ftp.riken.jp
パッケージ epel-release-7-11.noarch はインストール済みか最新バージョンです
何もしません
```

        又は

        ```
$ sudo rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm を取得中
準備しています...              ################################# [100%]
        パッケージ epel-release-7-11.noarch は既にインストールされています。
```

        EPELは既に入っているようです。
        <br>

    * Remiリポジトリ追加

        ```
$ sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
Retrieving http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
warning: /var/tmp/rpm-tmp.y8mLR1: Header V4 DSA/SHA1 Signature, key ID 00f97f56: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:remi-release-7.4-2.el7.remi      ################################# [100%]
```
<br>

* インストール

    PHP5.6をインストール

    ```
$ sudo yum install --enablerepo=remi,remi-php56 php php-devel php-mbstring php-pdo php-gd php-xml php-mcrypt
```

    PHP7.0をインストールする場合は、rem-php56をrem-php70に、PHP7.1の場合はrem-php71にしてください。
<br>

* バージョン確認

    ```
$ php -v
PHP 5.6.35 (cli) (built: Mar 29 2018 07:28:25)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
```

* httpd再起動

    ```
$ sudo systemctl restart httpd.service

* PHP動作確認

    phpファイル作成

    ```
$ echo "<?php phpinfo(); ?>" > /var/www/html/phptest.php
```

    ブラウザを起動して確認
<img src="https://qiita-image-store.s3.amazonaws.com/0/222823/bb7cb1f4-0784-13ad-cac5-37acd0977843.jpeg" width=600>

#次回
次回はデータベース「MariaDB」をインストールします。

前回：[SSH接続](https://qiita.com/Qsugi/items/45772c8a71a31bd0d3c8)
次回：[MariaDBインストール](https://qiita.com/Qsugi/items/7798669338b555f4ea8d)